构造函数:
目的:在对象被创建的时候,自动对对象进行初始化,不用调用。
形式:
函数名与类名相同
不能定义返回值和return
形参可以有可无
可以是inline
可以重载
可以带默认值
如果没有构造函数就会有个空的构造函数
实现:
Clock::Clock(int ....):
hour =(x1){
}当比较小只是初始化的时候不需要用函数体。
委托构造函数:
一个构造函数可以让另一个构造函数来帮忙构造、
例子:
复制构造函数://用已经存在的对象去初始化对象,一般默认有但是是对等复制
定义:形参为本类的对象引用。
作用:用一个已经存在的对象去初始化同类型的新对象
class 类名{
public:
类名//构造函数;
类名(const 类名 &对象名);//复制构造函数
};
类名::类名(const 类名 &对象名字)
调用情况:1.用一个对象来复制对象
2.函数的形参是类的对象,调用函数时,将使用实参对象初始化形参对象发生复制。
3.返回一个无名对象时。
析构函数:
完成对象被删除前的一些清理操作。//同样默认存在
原型: ~类名(); 无参无返回都无