马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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;
}
渣渣在线求指教
|