构造器:
(每个对象的母亲)每个对象都由构造器来生成对象
1、默认无参构造器:
若一旦用户定义了(有参无参)构造器,无参构造器就不会默认定义
方法名: 类名();
2、有参构造器:
方法名: 类名(…)
3、拷贝构造器:
若用户不显示定义拷贝构造器,编译器会默认添加默认拷贝构造器
类名 对象1=对象; //必须在实例化时
或者:
类名 对象1(对象);
方法名: 类名(类名& p){*this=p}
4、析构器:
当对象被释放时,在释放之前向该对象发送该方法
~类名()
浅拷贝:当对象中没有堆区或文件时(没有指向第三方资源时)
深拷贝:当对象中有堆区或文件时(没有指向第三方资源时)
1、也必须为新的对象复制一份同样的资源空间
2、再将内容复制
PS:构造器是可以重载的