C++ test with classes
C++ test with classes
我试图解决一个问题在c++,但因为我是一个初学者,我不知道如何做到这一点!问题是,如果你能帮助我:):
使用下面的c++代码创建关于类"car" &"卡车"。每个函数必须将适当的参数传递给vehicle的父类。此外,在创建对象时,函数car应该初始化乘客。在创建对象时,truck类应该初始化loadlimit。
具有car()和truck()的对象的语句将如下所示:
car ob(乘客,车轮,范围);
货车ob(载重限制,车轮,范围);
#include <iostream>
using namespace std;
class vehicle{
int num_wheels;
int range;
public:
vehicle(int w, int r){num_wheels = w; range = r;}
void showv(){
cout << "Wheels: " << num_wheels << endl;
cout << "Range: " << range << endl;
}
};
class car : public vehicle {
int passengers;
public:
void show(){
void showv();
cout << "Passengers: " << passengers << endl;
}
};
class truck : public vehicle {
int loadlimit;
public:
void show(){
void showv();
cout << "Loadlimit: " << loadlimit << endl;
}
};
int main(){
car c(5, 4, 500);
truck t(3000, 12, 1200);
cout << "Car: " << endl;
c.show();
cout << "Truck: " << endl;
t.show();
return 0;
}
类Car
和Truck
没有接受所需参数并传递给基类构造函数的构造函数。它们应该是这样的:
class car : public vehicle {
int passengers;
public:
car(int w,int r,int p): vehicle(w,r), passengers(p){}
void show(){
void showv();
cout << "Passengers: " << passengers << endl;
}
};
class truck : public vehicle {
int loadlimit;
public:
truck(int r, int w, int l):vehicle(r,w),loadlimit(l){}
void show(){
void showv();
cout << "Loadlimit: " << loadlimit << endl;
}
};
基本成员初始化
Car
Constructor:
car(int a, int b, int c) : vehicle(a,b),passengers(c){}; //initialiser list
Truck
Constructor:
truck(int g, int h, int j):vehicle(g,h),loadlimit(j){}
您需要为汽车和卡车添加承包商
class car : public vehicle {
int passengers;
public:
car(int p) : vehicle(int w, int r) // Call the superclass constructor in the subclass'
{
passengers = p;
}
void show()
{
showv();
cout << "Passengers: " << passengers << endl;
}
};
卡车也是一样
简单解决方案,
car::car(int w,int r,int p)
{
passengers = p;
vehicle::vehicle(w,r);
}
相关文章:
- Problems with std::cin.fail()
- 应用程序崩溃并显示"symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference"
- 这对"With a stackless coroutine, only the top-level routine may be suspended."意味着什么
- Boost.TEST with CLion: "Test framework quit unexpectedly"
- 避免碎片化的ClientHellos with OpenSSL (DTLS)
- Issues with Win32 ReadProcessMemory API
- Qt with WinAPI MouseProc
- [[maybe_unused]] with structured_binding?
- Issue with WriteProcessMemory
- OpenCV RTP-Stream with FFMPEG
- "Unable to start debugging. No process is associated with this object." - 在Visual Studio Code中使用GDB
- std::adjacent_difference with std::chrono time_point
- DLL Made with CMake 使程序崩溃
- Threads with Classes and std::packaged_task
- Working with classes
- Working with classes Visual C++ 2010
- Error with Classes
- C++ test with classes
- QList in classes with QT Creator/c++
- OpenGL with c++ classes