gpt4 book ai didi

c++ - 如何使用字符串和整数获取汽车类的整数结果

转载 作者:行者123 更新时间:2023-11-30 03:32:28 27 4
gpt4 key购买 nike

我正在编写一个程序来执行以下操作:

  • 构造函数接受汽车的年份和制造作为参数,并将这些值分配给对象的年份和制造成员变量。构造函数还将speed成员变量初始化为0。

  • 还创建了适当的访问器函数,以允许从对象的年份、品牌和速度成员变量中检索值。

  • accelerate函数每次调用时都会将speed成员变量加5。 

  • brake函数每次被调用时都会从speed成员变量中减去5。

这是我目前所拥有的,但我无法返回正确的速度。有什么解决办法吗?

#include <iostream>
#include <string>

using namespace std;
class Car
{
private:

int yearModel;
string make;
int speed;

public:

Car(int, string, int);
int getSpeed();
int getModel();
void accelerate();
void brake();


};

int Car::getSpeed()
{

return speed;
}

Car::Car(int yearModel, string make, int speed = 0)

{

}

void Car::accelerate()
{
speed += 5;
}

void Car::brake()
{
if (speed > 5)
speed -= 5;
else speed = 0;
}


int main()
{
int yearModel;
string make;
cout << "Enter year and make ";

cin >> yearModel >> make;

Car myCar(yearModel, make);
for (int i = 0; i < 5; i++)
{
myCar.accelerate();
cout << "The speed of the car is: " << myCar.getSpeed() << endl;

for (int j = 0; j < 5; j++)
{

myCar.brake();
cout << "The speed of the car is " << myCar.getSpeed() << endl;

system("PAUSE");
return (0);
}
}
}

最佳答案

Car::Car(int yearModel, string make, int speed = 0)
{

}

你有一个什么都不做的空构造函数体。因此在构造对象后,其数据成员将:

int yearModel;     // Have Undefined value
string make; // Have Default initialized value
int speed; // Have Undefined value

您应该在构造函数初始化列表中初始化它们:

Car::Car(int YearModel, string Make, int Speed = 0)
: yearModel(YearModel), make(Make), speed(Speed)
{

}

关于c++ - 如何使用字符串和整数获取汽车类的整数结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43442759/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com