|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
When a thing is done,it is done.Don't look back.Look forward to your next objective. ----George C.Marshall
纯虚函数和抽象类
纯虚函数-----virtual 返回值类型 函数名 (函数列表) = 0;
抽象类----当类中有了虚函数,这个类就叫抽象类
- #include<iostream>
- using namespace std;
- //纯虚函数---virtual 返回值类型 函数名 (参数列表) = 0;
- //抽象类---只要有一个纯虚函数,这个类就叫抽象类
- //抽象类特点---1、无法实例化对象 2、抽象类的子类,必须重写父类中的纯虚函数,否则也属于抽象类
- class Architecture
- {
- public:
- virtual void Show_a() = 0;
- };
- //没有重写虚函数
- class Villa : public Architecture
- {
- };
- //重写了虚函数,即使是空的,也没事
- class Edifice : public Architecture
- {
- public:
- virtual void Show_a() {}
- };
- class Bungalow : public Architecture
- {
- public:
- virtual void Show_a()
- {
- cout << "Bungalow!!!!!!!!!!!!!!" << endl;
- }
- };
- void test01()
- {
- //抽象类无法实例化对象
- Architecture a1;
- a1.Show_a();
- new Architecture;
-
- //子类必须重写父类中的虚函数,否则不能实例化对象
- Villa p1;
- p1.Show_a();
-
- Edifice p2;
- p2.Show_a();
- Bungalow p3;
- p3.Show_a();
- }
- int main()
- {
- test01();
-
- return 0;
- }
复制代码
渣渣在线求指教
|
|