3

可能重复:
构造函数的快捷方式

以下代码在 C++ 中是否相同:

件1:

MyFunnyClass o = MyFunnyClass();

片断2:

MyFunnyClass o;

我知道以下内容不等效,但我不确定顶部的两个:

MyFunnyClass o = MyFunnyClass () ;

MyFunnyClass o;
o = MyFunnyClass();
4

1 回答 1

2
MyFunnyClass o () ;

这根本没有以任何方式定义对象。这是最令人头疼的 Parseo是一个不接受任何内容并返回MyFunnyClass您已声明的 a 的函数。

真正的语法是

MyFunnyClass o;

这将默认构造一个对象。

MyFunnyClass o = MyFunnyClass();

值构造一个对象,然后将其复制或移动到o. 在这里期待省略。

于 2012-09-17T17:42:47.550 回答