列表初始化 (C++11 起)

来自cppreference.com


 
 
C++ 语言
 
 

花括号包围的初始化器列表列表初始化对象。

语法

直接列表初始化

T 对象 { 实参1, 实参2, ... };

T 对象{.指派符1 = 实参1 , .指派符2 { 实参2 } ... };

(C++20 起)
(1)
T { 实参1, 实参2, ... }

T {.指派符1 = 实参1 , .指派符2 { 实参2 } ... }

(C++20 起)
(2)
new T { 实参1, 实参2, ... }

new T {.指派符1 = 实参1 , .指派符2 { 实参2 } ... }

(C++20 起)
(3)
{ T 成员 { 实参1, 实参2, ... }; };

{ T 成员 {.指派符1 = 实参1 , .指派符2 { 实参2 } ... }; };

(C++20 起)
(4)
::() : 成员 { 实参1, 实参2, ... } {...

::() : 成员 {.指派符1 = 实参1 , .指派符2 { 实参2 } ...} {...

(C++20 起)
(5)

复制列表初始化

T 对象 = { 实参1, 实参2, ... };

T 对象 = {.指派符1 = 实参1 , .指派符2 { 实参2 } ... };

(C++20 起)
(6)
函数 ({ 实参1, 实参2, ... })

函数 ({.指派符1 = 实参1 , .指派符2 { 实参2 } ... })

(C++20 起)
(7)