读书人

关于C++的拷贝(复制)构造函数的有关

发布时间: 2012-05-03 14:06:56 作者: rapoo

关于C++的拷贝(复制)构造函数的问题?
#include<iostream>
using namespace std;
class A{
public:
A(){x=0;}
A(int x){this->x = x;}
A(const A &a)
{
x = a.x;
}
private:
int x;
};
int main()
{
A a = 4;
return 0;
}
为什么拷贝构造函数没有偶被调用啊?我是想法如下,A a = 4;首先就是调用了A(int x)生成一个临时的A的对象,然后在复制初始化a对象,调用拷贝构造函数啊。为什么编译器运行没有调用拷贝构造函数 啊????/

[解决办法]
这里是初始化,所以直接调用拷贝构造函数.
A a=4;的写法等同于 A a(4);

读书人网 >C++

热点推荐