C++多重继承+虚拟继承例题2-创新互联
#include#include#includeusing namespace::std;
class Vehicle
{
public:
Vehicle();
int weight;
Vehicle(int WEIGHT) {
weight = WEIGHT;
};
void setWeight(int);
};
void Vehicle::setWeight(int WEIGHT)
{
weight = WEIGHT;
}
Vehicle::Vehicle(){}
class Car :virtual public Vehicle
{
public:
Car();
int aird;
Car(int WEIGHT, int AIRD) :Vehicle(WEIGHT) {
aird = AIRD;
};
void setAird(int);
};
Car::Car(){}
void Car::setAird(int AIRD)
{
aird = AIRD;
}
class Boat:virtual public Vehicle
{
public:
Boat();
double tonnage;
Boat(int WEIGHT, double TONNAGE) :Vehicle(WEIGHT) { tonnage = TONNAGE; };
void setTonnage(double);
};
Boat::Boat() {}
void Boat::setTonnage(double TONNAGE)
{
tonnage = TONNAGE;
}
class AmphibianCar :public Car, public Boat
{
public:
AmphibianCar();
AmphibianCar(int WEIGHT, int AIRD, double TONNAGE) :Vehicle(WEIGHT), Car(WEIGHT, AIRD), Boat(WEIGHT, TONNAGE) {};
void display1() {
cout<< "init Vehicle"<< endl;
cout<< "init car"<< endl;
cout<< "init Boat"<>WEIGHT >>AIRD >>TONNAGE;
cin >>WEIGHT1 >>AIRD1 >>TONNAGE1;
AmphibianCar Car1(WEIGHT, AIRD, TONNAGE);
Car1.display1();
Car1.setWeight(WEIGHT1);
Car1.setAird(AIRD1);
Car1.setTonnage(TONNAGE1);
Car1.display2();
return 0;
}
学院的题目,感觉还是挺简单的,但总感觉我的实现思路不像是学院要求的思路。大概跟上一题差不太多,但是我不懂输出reset是为了干什么。题目是水陆两用汽车类。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
分享文章:C++多重继承+虚拟继承例题2-创新互联
URL网址:http://ybzwz.com/article/dsggdi.html