马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
抽象方法一般格式 virtual void run() = 0 ;
基类析构函数要加virtual,否则会有警告
如果基类有抽象函数(也叫纯虚函数),那么子类一定要实现该方法,否则会报错
#include <iostream>
using std::cout;
using std::endl;
using std::string;
class Animal
{
public:
Animal(string name);
virtual ~Animal();
virtual void run() = 0 ;
protected:
string name ;
};
Animal::Animal(string name)
{
this->name = name ;
}
Animal::~Animal()
{
}
class Dog : public Animal
{
public:
Dog(string name);
~Dog();
virtual void run();
};
Dog::Dog(string name):Animal(name)
{
}
Dog::~Dog()
{
}
void Dog::run()
{
cout<<"我叫"<<name<<",我跑步时乱蹦乱跳"<<endl;
}
int main()
{
Dog* dog = new Dog("教主");
dog->run();
delete dog ;
return 0;
}
|