simulates a team of creatures fighting against a dragon. (模拟团队创造一个龙决斗的creature)
使用 You will be using classes(类), inheritance, (继承) and polymorphism. (多态)
Create a new Creature class. 创造一个新的 龙类
Dragon Class that inherits Creature.. 龙类继承新的类
Create a new Human class that inherits Creature.
Case/continue 情形 继续
题目没大明白,求大神写个代码
大致框架也行。
谢谢了
2 个解决方案
#1
大致这样
class Creature;
class Dragon : public Creature;
class Human : public Creature;
#2
仅供参考:
#include <iostream>
using namespace std;
class Creature
{
public:
virtual void Fight()=0;
};
class Dragon : public Creature
{
public:
void Fight()
{
cout<<"龙要吃人"<<endl;
}
};
class Human : public Creature
{
public:
void Fight()
{
cout<<"人要杀龙"<<endl;
}
};
int main()
{
Creature* creature[10]={0};
for(int i=0;i<10;++i)
{
if(i%2==0)
{
creature[i]=new Dragon();
}
else
{
creature[i]=new Human();
}
}
for(int i=0;i<10;++i)
{
creature[i]->Fight();
delete creature[i];
}
return 0;
}
![英文C++ 题目 继承多态题目怎么做 英文C++ 题目 继承多态题目怎么做](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0hNNkx5OXBiV2N0WW1KekxtTnpaRzR1Ym1WMEwzVndiRzloWkM4eU1ERTFNRFV2TURFdk1UUXpNRFEwTXpVek5WODVOemM0T0RRdWFuQm4%3D.jpg?w=700&webp=1)
#1
大致这样
class Creature;
class Dragon : public Creature;
class Human : public Creature;
#2
仅供参考:
#include <iostream>
using namespace std;
class Creature
{
public:
virtual void Fight()=0;
};
class Dragon : public Creature
{
public:
void Fight()
{
cout<<"龙要吃人"<<endl;
}
};
class Human : public Creature
{
public:
void Fight()
{
cout<<"人要杀龙"<<endl;
}
};
int main()
{
Creature* creature[10]={0};
for(int i=0;i<10;++i)
{
if(i%2==0)
{
creature[i]=new Dragon();
}
else
{
creature[i]=new Human();
}
}
for(int i=0;i<10;++i)
{
creature[i]->Fight();
delete creature[i];
}
return 0;
}
![英文C++ 题目 继承多态题目怎么做 英文C++ 题目 继承多态题目怎么做](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0hNNkx5OXBiV2N0WW1KekxtTnpaRzR1Ym1WMEwzVndiRzloWkM4eU1ERTFNRFV2TURFdk1UUXpNRFEwTXpVek5WODVOemM0T0RRdWFuQm4%3D.jpg?w=700&webp=1)