【发布时间】:2020-09-13 21:03:34
【问题描述】:
我同时遇到以下两个错误:“未定义对 `Vessel::Vessel()' 的引用”和:“Id 返回 1 个退出状态”但没有显示。我如何解决它?我尝试了所有方法,但无法提出解决方案。
可以看出问题在于合并类或引用,但我无法弄清楚究竟是什么
下面是整个程序的代码:
#include<iostream>
#include<string>
using namespace std;
class Vessel{
protected:
string registration;
int power;
public:
Vessel();
Vessel(string r, int power){
r=registration;
power=power;
};
string set_registration(string put){
registration=put;
}
string get_registration(){
return registration;
}
double set_power(double set){
power=set;
}
double get_power(){
return power;
}
virtual void print()=0;
};
class Speedboat : public Vessel{
private:
int speed;
public:
set_speed(int s){
speed=s;
}
get_speed(){
return speed;
}
void print(){
cout<<get_registration()<<" "<<get_power()<<" "<<get_speed();
}
};
class Ferry : public Vessel{
private:
int capacity;
};
int main(){
Vessel * ptr;
Speedboat obj1;
ptr=&obj1;
obj1.set_power(5.2);
obj1.set_registration("ZG5212");
ptr->print();
}
【问题讨论】:
标签: c++ class oop inheritance