struct tuple_size<std::complex<T>> : std::integral_constant<std::size_t, 2> {}; (C++26 起) std::tuple_size 针对std::complex 的部分特化提供了在编译时使用元组式语法获取一个 complex 的组分数量的方法,其总是 2。为支持结构化绑定而提供它们。 继承...
std::tuple_size 对对偶的部分特化提供在编译时使用元组式语法获得对偶中元素个数的方法,该数总是 2。 继承自 std::integral_constant 成员常量 value [静态] 常数值 2 (公开静态成员常量) 成员函数 operator std::size_t 将对象转换到 std::size_t,返回 value (公开成员函数) operator() (C++14) ...
#include <iostream> #include <tuple> template <class T> void test(T t) { int a[std::tuple_size<T>::value]; // can be used at compile time std::cout << std::tuple_size<T>::value << '\n'; // or at run time } int main() { test(std::make_tuple(1, 2, 3.14)); }...
std::tuple_size(以及它的朋友std::tuple_element和std::get)的设计目标不仅是在文字std::tuple上工作...
std::tuple_element是一个类型萃取器(type trait),用于访问给定元组类型的第 N 个元素类型。其原型定义如下: template <std::size_t N, class Tuple> struct tuple_element; template <std::size_t N, class... Types> struct tuple_element<N, std::tuple<Types...>>; ...
class tuple_size< std::span<T, std::dynamic_extent> >; // 不定义 (2) (C++20 起) 提供作为编译时常量表达式的对静态 span 中的元素数的访问。若 span 拥有动态长度,则 tuple_size 特化是不完整类型。 继承自 std::integral_constant 成员常量 value[静态] N, span 中的元素数(公开静态成员常量) ...
在通过包含 <tuple> 头文件变得合法以外,模板 (3-5) 在包含头文件 <array> 或 <utility> 时可用。 所有std::tuple_size 的特化满足 BaseCharacteristic 对于某些 N 为std::integral_constant<std::size_t, N> 的一元类型特征 (UnaryTypeTrait) 。 cv...
: std::integral_constant<std::size_t, std::tuple_size<T>::value> {}; (2) (since C++11) template< class T > struct tuple_size< volatile T > : std::integral_constant<std::size_t, std::tuple_size<T>::value> {}; (3) (since C++11) (deprecated in C++20) template< class...
std::tuple_size<std::tuple> Defined in header<tuple> template<class...Types> structtuple_size<std::tuple<Types...>> :std::integral_constant<std::size_t, sizeof...(Types)>{}; (since C++11) Provides access to the number of elements in a tuple as a compile-time constant expression....
std::tuple_size 的所有特化满足基特征为std::integral_constant<std::size_t, N> 某个 N 的一元类型特征 (UnaryTypeTrait) 。 用户可以对程序定义类型特化 std::tuple_size 以令它们为元组式。程序定义特化必须满足上述要求。 通常只需要定制对 cv 无限定类型的特化。 辅助变量模板 定义于头文件 <tuple> ...