您的位置:首页 > 其它

关于类的拷贝构造函数、赋值构造函数探究

2009-03-03 16:09 274 查看
仔细研究一下下面程序的输出,体会拷贝构造函数和赋值构造函数的调用时机

#include <iostream>
using namespace std;

class B
{
public:
B()
{
cout<<"default constructor"<<endl;
}
~B()
{
cout<<"destructed"<<endl;
}
B(int i):data(i)    //B(int) works as a converter ( int -> instance of  B)
{
cout<<"constructed by parameter " << data <<endl;
}
B(const B& b)
{
cout<<"Copy Constructor"<<endl;
}

B& B::operator =(const B& b)
{
cout<<"Assignment Constructor"<<endl;
data = b.data;
return *this;
}

private:
int data;
};

B Play( B b)
{
return b ;
}

int main(int argc, char* argv[])
{
B t1 = Play(5);
//B t2 = Play(t1);
B t2 = Play(10);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: