
std::tuple
文章平均质量分 82
类模板 std::tuple 是固定大小的异类值汇集。它是 std::pair 的推广。
繁星璀璨G
单身,求对象
展开
-
c++11 标准模板(STL)(std::tuple)(十)
提供 tuple 元素类型的编译时带下标访问。原创 2024-03-10 08:30:00 · 530 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(九)
提供对 tuple 中元素数量的访问,作为编译时常量表达式。原创 2024-03-09 08:30:00 · 1576 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(八)
1-2) 比较 tuple lhs 的每个元素和 tuple rhs 的对应元素。3-6) 以字典序比较 lhs 与 rhs ,即比较首元素,若相等则比较第二元素,若均相等则比较第三元素,以此类推。所有比较运算符是短路的;它们在确定结果所必须的比较之外不访问 tuple 元素。原创 2024-03-08 08:30:00 · 1193 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(七)
1-4) 从 tuple 提取第 I 个元素。 I 是 [0, sizeof...(Types)) 中的整数值。5-8) 提取 tuple t 的类型为 T 的元素。若 tuple 不恰好拥有一个该类型元素则编译失败。任何值均可赋给而无效果的未指定类型的对象。目的是令 std::tie 在解包 std::tuple 时作为不使用的参数的占位符使用。原创 2024-03-07 08:30:00 · 1987 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(六)
构造到 args 中参数的,适于转发成函数参数的引用的 tuple 。该 tuple 在以右值为参数时拥有右值引用数据成员,否则拥有左值引用数据成员。构造所有 args 中的 tuple 所连接成 tuple 。若 std::decay_t... 中的任何类型不是 std::tuple 的特化则行为未定义。然而,实现可以选择支持遵循仿 tuple 协议的类型(例如 std::array 与 std::pair )。原创 2024-03-06 08:30:00 · 522 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(五)
创建 tuple 对象,从参数类型推导目标类型。创建到其参数或 std::ignore 实例的左值引用的 tuple 。原创 2024-03-05 08:30:00 · 1007 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(四)
对 *this 中的每个元素与 other 中其对应元素调用 swap (可以是 std::swap ,或通过 ADL 找到的)。交换 lhs 与 rhs 的内容。等价于 lhs.swap(rhs) 。原创 2024-03-04 08:30:00 · 468 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(三)
以另一 tuple 或 pair 的内容替换 tuple 的内容。1) 复制赋值运算符。复制赋值 other 的每个元素给 *this 的对应元素。2) 移动赋值运算符。对所有 i ,赋值 std::forward(get(other)) 给 get(*this) 。3) 对所有 i ,赋 std::get(other) 给 std::get(*this) 。4) 对所有 i ,赋 std::forward(std::get(other)) 给原创 2024-03-03 08:30:00 · 942 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(二)
构造新的 tuple 。1) 默认构造函数。值初始化所有元素。2) 直接构造函数。以对应参数初始化 tuple 的每个元素。3) 转换构造函数。以 std::forward(args) 中的对应值初始化 tuple 的每个元素。4) 转换复制构造函数。对 sizeof...(UTypes) 中所有 i ,以 std::get(other) 初始化 tuple 的第 i 个元素。原创 2024-03-02 12:10:24 · 1371 阅读 · 0 评论 -
c++11 标准模板(STL)(std::tuple)(一)
类模板 std::tuple 是固定大小的异类值汇集。它是 std::pair 的推广。原创 2024-03-01 08:30:00 · 677 阅读 · 0 评论