#include<iostream>
using namespace std;
class A
{
public:
A()
{
cout<<"inside constructor\n";
}
};
int main()
{
A object1;
A object2();
}
运行上面的代码,给出下面的输出
$./class.out
inside constructor
在这里,只针对object1
创建调用的用户定义构造函数,而不针对object2
。在后一种情况下不调用用户定义构造函数的原因是什么?
a object2();
声明一个名为object2
的函数,该函数不接受任何参数,并返回a
。它不会创建一个对象,称为
object2
。
您可以像使用对象1
那样使用对象2;
或对象2{};
来执行您想要的操作。