使用花括号进行变量初始化

4
以下语法是否正确:
T t = {};

非POD类型的零初始化或值初始化均为零初始化。
1个回答

1

T object = {arg1, arg2, ...};这种语法是复制列表初始化。由于您已经确定T不是聚合类型,并且T具有默认构造函数(来自列表),因此列表初始化将执行值初始化

  • 如果T是聚合类型,则执行聚合初始化。
  • 否则,如果花括号初始化列表为空并且T是具有默认构造函数的类类型,则执行值初始化。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接