c++11 多态性.ppt

c11多态性

虚函数 如果派生类需要修改基类的行为(即重写与基类函数同名的函数),则在基类中将相应的函数声明为虚函数。 注意:一般不要重写继承而来的非虚函数。 在重写虚函数时,若函数有默认形参值,不要重新定义不同的值。 例-5 见例题 举例代码\virtual_1.cpp 举例代码\virtual_2.cpp 有虚函数时,对象内存空间的大小 举例代码\(有虚函数)对象的内存空间.cpp (虚)继承类占用空间的大小 举例代码\(虚)继承类内存大小.cpp 抽象类 注意 抽象类只能作为基类来使用。 不能声明抽象类的对象(但可以用来定义指针和引用)。 一个抽象类自身无法实例化,只能通过继承机制,生成非抽象类,然后实例化。 构造函数不能是虚函数,析构函数可以是虚函数。 纯虚函数 定义 在基类中声明的虚函数,在该类中没有定义具体的内容,要求各派生类根据实际需要定义自己的版本。 格式 virtual 返回类型 函数名( ) = 0; 注意:纯虚函数根本就没有函数体。 抽象类 抽象类的作用? 通过它为一个类族建立一个公共的接口(此接口的完整实现,即虚函数的函数体,由派生类定义。),使他们能够更有效的发挥多态性。 在派生类中如何识别虚函数? 只要与基类的纯虚函数有相同的函数名、参数、返回值,则系统自动判断确定为虚函数。 * * * * * * * * * * *

文档评论(0)

1亿VIP精品文档

相关文档