使用大括号({})或等号(=)时初始化变量

当我读The C++ Programming Language 4th Edition,初始化变量中,笔者认为这是betther使用{}=初始化变量: 但我看到有更多的人使用={}
那么哪种方法是坚持不懈的好原则? ={}
Thx很多!使用大括号({})或等号(=)时初始化变量

回答:

你选择哪一个取决于你自己的编码风格。最重要的是,一旦您决定使用哪种方法,请始终使用该方法。不要在两种方法之间切换。我个人使用(=)符号初始化变量,因为这是我看到的最常见的变量初始化方法。此外,C的新标准++(C++ 11以后,我相信)允许您初始化变量,像这样:

int variable(1) 

但我劝你对这样,它不会在某些工作情况,正如你的书可能涵盖的那样。

回答:

本书建议使用初始值设定项的一个原因是它成为初始值。

当使用赋值'='时,在某些情况下,您最终会构造一个给它一个初始值的对象,然后代码将使用该类类型的赋值运算符来更改初始值,因此效率较低。这只是在某些情况下,取决于可用的构造函数等。

但是,在大多数情况下,现代编译器可以对其进行优化,使其成为同一事物。所以这不值得担心。

C++的一个问题是,无论事情有多简单,总有几种方法可以做同样的事情。

以上是 使用大括号({})或等号(=)时初始化变量 的全部内容, 来源链接: utcz.com/qa/260583.html

回到顶部