【发布时间】:2010-04-27 16:09:58
【问题描述】:
我经常看到人们使用 C++ 创建对象
Thing myThing("asdf");
而不是这个:
Thing myThing = Thing("asdf");
这似乎有效(使用 gcc),至少只要不涉及模板。我现在的问题是,第一行是否正确,如果正确,我应该使用它吗?
【问题讨论】:
-
任何一种形式都没有新的。
-
第二种形式将使用复制构造函数,所以不,它们不等价。
-
我玩了一下,当模板与无参数构造函数一起使用时,第一种方法有时似乎会失败..
-
哦,我为此获得了“好问题”徽章,真可惜!
标签: c++