#include<string>
using namespace std;
class Animal{
string nome;
public:
Animal(string n):nome(n){}
virtual string Especie() const=0;
static int Compativeis(const Animal &a1, const Animal &a2){
return a1.Especie()==a2.Especie();
}
};
class Gato: public Animal{
public:
Gato(string n):Animal(n){}
string Especie()const{
return("Gato");
}
};
class Cao: public Animal{
public:
Cao(string n):Animal(n){}
string Especie()const{
return("Cao");
}
};
void main(){
Gato *g1=new Gato("Mia");
Cao *c1=new Cao("Nely");
cout<<g1->Especie()<<endl;
cout<<c1->Especie()<<endl;
if(Animal::Compativeis(*g1, *c1))
cout<<"Compativeis"<<endl;
else
cout<<"Incompativeis"<<endl;
delete g1;
delete c1;
system("pause");
}
Saída Standard:
Sem comentários:
Enviar um comentário