构造函数
不能为虚函数,因为虚函数的调用是为了在只知道部分情况下工作的机制,调用一个只知道接口而不知道具体对象类型的函数调用,而构造函数的使用一定是确定对象的类型,所以不能为虚函数
析构函数
通常要设置为虚函数,这样进行动态联编后,可以保证"多态"应用时,先从指针的指向类开始析构,逐渐向基类析构,防止内存泄露
可以为内联函数
拷贝构造函数
赋值函数
非默认函数(需要显示定义的函数)
类型转换函数(隐式调用)
左值赋值表达式中的隐式转换
初始化列表
顺序:根据成员变量的声明顺序确定
常量const初始化必须在构造函数中,或设置 为static ,才能在声明时定义初始化static const int i=5;