【发布时间】:2014-09-03 09:29:11
【问题描述】:
Scott Meyers 的草稿书 Effective C++11 指出:
在创建对象时区分 () 和 {}
Object obj(args...) 和 Object obj{args...} 有什么区别?以及斯科特为什么这么说。
更新:
问题How to use C++11 uniform initialization syntax? 询问HOW,而这个问题询问WHY。
更新2:
我发现以下链接很有帮助,并且完全回答了这个问题:
【问题讨论】:
-
@MattMcNabb,这个问题问的是如何,这个问题是问为什么。
-
这个问题不问“WHY”,另一个问题涉及统一初始化的作用。
-
一种是直接初始化,一种是列表初始化。该标准包含大量关于它们的具体信息。
-
@MattMcNabb,我引用了 Scott 的声明,想知道他为什么这么说。
标签: c++ oop c++11 constructor uniform-initialization