类的复制构造与移动构造测试代码:
class myClass{
//默认构造
myClass(){
}
//复制构造-没有提供移动构造的情况下编译器使用复制构造
myClass(const myClass& my){//此处的my相当于左值引用&
}
//移动构造-编译默认优先选择
myClass(myClass&& my){//此处的my相当于右值引用&&
}
//操作符重载
myClass& operator=(const myClass& myLeft);//左值引用重载-复制对象副本 copy of myClass
myClass& operator=(myClass&& myRight);//右值引用重载-移动对象本身 move of myClass
//注:移动对象需要清空对象,释放其资源与锁
//左值引用与右值引用的重载规则
//void t1(myClass& my);//只能被左值调用
//void t1(const myClass& my);//左值,右值都可调用
//两个同时实现了,//左值,右值都可调用,并支持move
void t1(myClass& my);//void t1(const myClass& my);
void t1(myClass&& my);//void t1(myClass&& my);
//下面的写法只支持右值引用
//vo