私は4つのクラスをC++で持っています。動物はスーパークラスであり、SnakeとTigerはAnimalから継承していましたが、Dangerous Animalからも継承しています。 SnakeやtigerがDangerousAnimalのインスタンスであるかどうかをチェックする関数を実装しました。しかし、私はC++C++でdynamic_castを使用
に私のコードを、それをimplemtingで問題を発見しています:
bool Vet::examine (Animal *someAnimal){
if(DangerousAnimal* s = dynamic_cast<DangerousAnimal*>(Animal)){
return false;
}else{
return true;
}
}
エラーが
[email protected]:~/Desktop/OOP/Lab1$ g++ -std=c++11 -oAnimalWellBeingLauncher AnimalWellBeingLauncher.cpp q1.cpp
q1.cpp: In member function ‘bool Vet::examine(Animal*)’:
q1.cpp:122:64: error: expected primary-expression before ‘)’ token
if(DangerousAnimal* s = dynamic_cast<DangerousAnimal*>(Animal)){
コード、コード、コードはどこですか? [MCVE](http://stackoverflow.com/help/mcve):最小(OK)完全(!!)確認可能な(!!)例を提供してください。あなたの例は完全でも検証可能でもないので、コードをコンパイルするには複数のラウンドトリップが必要です。 –