C++ 参考手册
- C++11
 - C++14
 - C++17
 - C++20
 - C++ 编译器支持情况表
 - 独立与宿主实现
 - C++ 语言
 - C++ 关键词
 - 预处理器
 - C++ 标准库头文件
 - 具名要求
 - 功能特性测试 (C++20)
 - 工具库
 - 程序支持工具
 - std::initializer_list
 - std::rbegin(std::initializer_list)
 - std::rend(std::initializer_list)
 - std::initializer_list<T>::initializer_list
 - std::initializer_list<T>::size
 - std::initializer_list<T>::begin
 - std::initializer_list<T>::end
 - std::begin(std::initializer_list)
 - std::end(std::initializer_list)
 - std::apply
 - 库特性测试宏 (C++20)
 - 函数对象
 - std::hash
 - std::pair
 - std::tuple
 - std::optional
 - std::any
 - std::variant
 - 格式化库 (C++20)
 - std::integer_sequence
 - std::exchange
 - std::make_from_tuple
 - std::launder
 - std::to_chars
 - std::from_chars
 - std::as_const
 - std::source_location
 - 变参数函数
 - std::bitset
 - std::cmp_equal, cmp_not_equal, cmp_less, cmp_greater, cmp_less_equal, cmp_greater_equal
 - std::in_range
 - std::declval
 - std::forward
 - std::move
 - std::move_if_noexcept
 - std::chars_format
 - std::piecewise_construct_t
 - std::piecewise_construct
 - std::in_place, std::in_place_type, std::in_place_index, std::in_place_t, std::in_place_type_t, std::in_place_index_t
 - 注释
 - 类型支持(基本类型、RTTI、类型特性)
 - 概念库 (C++20)
 - 错误处理
 - 动态内存管理
 - 日期和时间工具
 - 字符串库
 - 容器库
 - 迭代器库
 - 范围库 (C++20)
 - 算法库
 - 数值库
 - 输入/输出库
 - 文件系统库
 - 本地化库
 - 正则表达式库
 - 原子操作库
 - 线程支持库
 - 实验性 C++ 特性
 - 有用的资源
 - 索引
 - std 符号索引
 - 协程支持 (C++20)
 - C++ 关键词
 
位置:首页 > C++ 参考手册 >工具库 >std::initializer_list > std::initializer_list<T>::initializer_list
std::initializer_list<T>::initializer_list
|   initializer_list() noexcept;  | 
 (C++11 起)  (C++14 前)  | 
|
|   constexpr initializer_list() noexcept;  | 
(C++14 起) | |
构造空的 initializer_list 。
参数
(无)
复杂度
常数
示例
运行此代码
#include <iostream> #include <initializer_list> int main() { std::initializer_list<int> empty_list; std::cout << "empty_list.size(): " << empty_list.size() << '\n'; // 用列表初始化创建初始化器列表 std::initializer_list<int> digits {1, 2, 3, 4, 5}; std::cout << "digits.size(): " << digits.size() << '\n'; // auto 的特殊规则表示‘ fraction ’拥有类型 // type std::initializer_list<double> auto fractions = {3.14159, 2.71828}; std::cout << "fractions.size(): " << fractions.size() << '\n'; }
输出:
empty_list.size(): 0 digits.size(): 5 fractions.size(): 2
注意
尽管缺少构造函数,创建非空初始化器列表亦是可能的。在这些时候隐式构造 std::initializer_list 实例:
- 花括号初始化列表用于列表初始化时,包括函数调用列表初始化和赋值表达式
 - 花括号初始化列表被绑定到 auto 时,包括在有范围 for 循环中