C++中拷贝构造函数调用时机有三种:
1.使用一个已知创建完毕的对象来初始化一个新对象
2.值传递的方式给函数参数传值
3.以值方式返回局部对象
3示例:
Person doWork() {
Person p1;
return p1;
}
void test03() {
Person p = doWork();//doWork函数返回p1,其实是创建了一个副本传给了p,可以验证p1和p的地址不一样
}
C++中拷贝构造函数调用时机有三种:
1.使用一个已知创建完毕的对象来初始化一个新对象
2.值传递的方式给函数参数传值
3.以值方式返回局部对象
3示例:
Person doWork() {
Person p1;
return p1;
}
void test03() {
Person p = doWork();//doWork函数返回p1,其实是创建了一个副本传给了p,可以验证p1和p的地址不一样
}