avatar
A question about C++# Computation - 科学计算
w*n
1
An Animal class, a subclass Cat, both of them can speak(). There is a cage
class which can hold an animal. I shake() the cage and want the animal in it
to speak. Here is my code. The problem is, if i put the cat in the cage, it
won't speak "miao" but "animal". Any way to solve this?
class Animal {
public :
virtual void speak() {cout << "Animal"<};
class Cat : public Animal {
public :
void speak() {cout << "Miao" << endl;}
};
class Cage {
Animal aa;
public :
Cage(Animal& a):
avatar
m*e
2
use reference or pointer to Animal in your cage class definition for aa
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。