摘要:
在C++中,调用拷贝构造函数有三种情况:1.一个对象作为函数参数,以值传递的方式传入函数体.2.一个对象作为函数返回值,以值传递的方式从函数返回.3.一个对象用于给另外一个对象进行初始化(复制初始化).拷贝构造函数必须以引用的形式传递(参数为引用值).其原因如下:当一个对象以传递值的方式传一个函数的时候,拷贝构造函数自动的调用来生成函数中的对象.这样会导致无限循环地调用拷贝构造函数,直至栈溢出.以前,一直有个误解,以为以同类型的对象调用"="时,就会调用赋值符.参看以下的例子: 1 class CTest { 2 public: 3 CTest(); 4 CTest(con 阅读全文
posted @ 2012-07-17 11:46
一点心青
阅读(5594)
评论(2)
推荐(1)