注意事项
class CAnimal {
public:
virtual void Bark() = 0;
virtual void Sleep() = 0;
};
class CDog :public CAnimal {
public:
virtual void Bark() override {
};
virtual void Sleep() override {
};
};
class CCat :public CAnimal {
public:
virtual void Bark() override {
};
virtual void Sleep() override {
};
};
class CNpc
{
public:
virtual void PK() = 0; //纯虚函数
};
class CNpc_1 :public CNpc
{
public:
void PK() { cout << "CNpc_1 PK"; }
};
class CNpc_2 :public CNpc
{
public:
void PK() { cout << "CNpc_2 PK"; }
};
int main()
{
CNpc_1 cnp1;
CNpc_2 cnp2;
CNpc* p1 = &cnp1;
p1->PK(); //调用CNpc_1中的函数
CNpc* p2 = &cnp2;
p2->PK(); //调用CNpc_2中的函数
return 0;
}