构造函数的作用是创建并初始化对象,所以构造函数被调用的前提是有对象被创建。
拷贝构造函数的使用
//例如有个类为Point
Point p1(1, 2);
Point p2 = p1;
//或者
Point p3(p1);
//都会调用拷贝构造函数
还有一种情况是调用一个函数的时候,传递的参数是一个类的对象,这个时候回调用拷贝构造函数
赋值运算符重载函数
相比来说赋值运算符重载函数用的情况就少了点,示例中Demo是一个类
Demo a(2); //调用构造函数
Demo b; //构造函数
b = foo(a); //赋值运算符重载函数
Demo c = a; //拷贝构造函数
Demo foo(Demo& x) { //传递参数的时候调用拷贝构造函数
Demo d;
return d; //返回的是局部变量,编译器做优化
}
编辑日期:2016.08.09 16:04