【发布时间】:2018-05-31 09:17:01
【问题描述】:
在阅读The C++ Programming Language 4th Edition的时候,初始化一个变量,作者说用{}比=初始化一个变量更好:
但我发现使用= 的人比使用{} 的人多。
那么哪种方法是坚持的好原则呢? = 或 {}?
【问题讨论】:
-
就像 Bjarne 所说,在前 30 年里,
{}选项不可用,所以旧代码使用=。如果您使用此类旧代码,您可能应该继续使用=以保持一致。在新代码中,您可以选择改用{},并且对于一些新功能,它是必需的。所以,一致性...... -
无论你使用哪一个都保持不变,并且能够同时阅读
-
我们能告诉你什么书没有?
-
这些不是等价的。
T x = y;是复制初始化(即使没有发生复制),并且不适用于显式构造函数。
标签: c++ initialization list-initialization