首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

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

2012-05-03 
关于C++的拷贝(复制)构造函数的问题?#includeiostreamusing namespace stdclass A{public:A(){x0}A(i

关于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);

热点排行