含有虚函数的类是
#include<iostream>
using namespace std;
class Animal
{
public:
virtual void Shout()=0;//纯虚函数
virtual void Impl()=0;
Animal()
{
printf("Animal Constructor\n");
}
virtual ~Animal()
{
printf("Animal destroy!\n");
}
};
class Dog:public Animal
{
public:
Dog()
{
printf("Dog Constructor\n");
}
virtual void Shout()
{
printf("wang!\n");
}
virtual void Impl()
{
printf("implement of Dog!\n");
}
virtual ~Dog(){printf("Dog destroy!\n");}
};
void Test_func()
{
//Animal a; //抽象类不能建立对象
Dog dog;
Animal *animal=&dog;
animal->Shout();
animal->Impl();
}
int main()
{
Test_func();
}