1.前言
复制控制通常指类的复制构造函数,赋值操作运算符,析构函数
1.1复制构造函数
引入复制构造函数是为了让类的对象直接生成另一个对象,同时把此对象的数据复制到另一个对象中
如果类中没有实现复制构造函数,编译器自动添加一个,
如果我们不需要,则把它明确的禁止,禁止方法是在private声明一个
2.定义
2.1复制构造函数的2种方法实现
base(const base& org):x(org.x),y(org.y){} //用初始化列表方式实现
base(const base& org){x=org.x; y=org.y;} //用传统函数方式初始化成员
复制构造函数没有返回值,是一种特别的构造函数,自动可以用构造函数的初始化列表达式
demo c(b); //触发调用复制构造函数
2.2赋值操作运算符
通过重载运算符=,达到类的对象之间可以赋值功能,简化类对象的操作
但返回值必须有this指针的指向的引用/"*this/"
b=c; //触发调用赋值操作运算符
2.3代码例子:
#include
class demo{
public:
demo():x(0),y(0){}//无参数的构造函数
demo(int a1,int b1):x(a1),y(b1){}//有默认值参数的构造函数
void setxy(int a=0,int b=0){x=a; y=b;} //修改x,y成员
void print(){std::cout<</" x=/"<
C++类复制控制
最新推荐文章于 2022-04-11 18:51:25 发布
2930

被折叠的 条评论
为什么被折叠?



