cly

博客园 首页 新随笔 联系 订阅 管理

2012年7月3日 #

摘要: 构造函数:用以对类中数据成员进行初始化系统会自动生成默认构造函数(参数为空),但是若手动定义了带参的构造函数,会自动覆盖默认构造函数时若需要调用默认构造函数进行实例化,需要手动定义一个不带参的构造函数初始化列表:可通过初始化列表的方式对类数据成员进行初始化,如定义初始化列表:User():sId(0001),sSex(1)继承基类时在派生类中调用基类的构造函数,对基类进行初始化,实际上就是初始化列表。构造函数可以只在类体内声明,在类体外定义,且声明时不需要初始化列表,在定义时需要给出初始化列表(若有)。 有两种情况需要初始化列表: 数据成员中有常量成员:const int Id; 数据成... 阅读全文
posted @ 2012-07-03 07:37 戒色 阅读(728) 评论(0) 推荐(0) 编辑

摘要: 从系统实现的角度看,多态性分为两种,静态多态性与动态多态性静态多态性:函数重载、运算符重载(本质上也是函数重载);动态多态性:在程序运行过程中才动态地确定操作所针对的对象,又称为运行时的多态性,一般通过虚函数(virtual function)实现。C++通过虚函数与指向基类的指针一起来实现多态:当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数,因此在派生类中重新声明该虚函数时,可以加virtual,也可以不加,但最好加virtual,使程序清晰。如果在派生类中没有对基类中的虚函数重新定义,则派生类继承其直接基类的虚函数。静态关联:在编译时即可确定其调用的虚函数属于哪一个类 阅读全文
posted @ 2012-07-03 00:06 戒色 阅读(346) 评论(0) 推荐(0) 编辑