sizeof... 运算符

< cpp‎ | language

查询形参包中的元素数量。

语法

sizeof...( 形参包 ) (C++11 起)

返回 std::size_t 类型的常量。

解释

返回形参包中的元素数量。

关键词

sizeof

示例

#include <iostream>
#include <array>
#include <type_traits>
 
template<typename... Ts>
constexpr auto make_array(Ts&&... ts)
    -> std::array<std::common_type_t<Ts...>,sizeof...(ts)>
{
    return { std::forward<Ts>(ts)... };
}
 
int main()
{
    auto b = make_array(1, 2, 3);
    std::cout << b.size() << '\n';
    for (auto i : b)
        std::cout << i << ' ';
}

输出:

3
1 2 3

参阅