gpt4 book ai didi

C++ 返回值显示 -858993460

转载 作者:搜寻专家 更新时间:2023-10-30 23:57:45 25 4
gpt4 key购买 nike

我是 c++ 的新手,正在尝试创建一个汽车类程序,要求用户提供一年的汽车制造商。然后程序采用速度,始终从 0 开始,以 5 mph 的速度加速 5 次,以 5 mph 的速度制动 5 次。我必须使用头文件和 2 个 cpp 文件创建程序。速度的返回值不正确,显示为:

输入汽车年份:2000输入汽车品牌:雪佛兰起始速度为-858993460

当前速度是:-858993455 mph。

当前速度是:-858993450 mph。

当前速度是:-858993445 mph。

当前速度是:-858993440 mph。

当前速度是:-858993435 mph。

当前速度是:-858993440 mph。

当前速度是:-858993445 mph。

当前速度是:-858993450 mph。

当前速度是:-858993455 mph。

当前速度是:-858993460 mph。

按任意键继续。 . .

谁能帮我弄清楚我做错了什么?我附上了到目前为止的内容。任何帮助是极大的赞赏。谢谢

#define CAR_H
#include <string>
using namespace std;

class Car
{
private:
int yearModel;
string make;
int speed;

public:
Car(int, string);
void accelerate();
void brake();
int getSpeed ();

};

#include <iostream>
#include "Car.h"
using namespace std;

Car::Car(int carYearModel, string carMake)
{
int yearModel = carYearModel;
string make = carMake;
int speed = 0;
}

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

void Car::brake()
{
speed -= 5;
}

int Car::getSpeed()
{
return speed;
}

int getYear(int year)
{
return year;
}

string getMake(string make)
{
return make;
}

#include "Car.h"
#include <iostream>
#include <sstream>
#include <iomanip>
using namespace std;

int main()
{
int count;
int yr;
string mk;
int getSpeed;

cout << "Enter the year of the car: ";
cin >> yr;

cout << "Enter the make of the car: ";
cin >> mk;

Car myCar(yr, mk);

cout << "The starting speed is "
<< myCar.getSpeed() << endl << endl;

for ( count = 0; count < 5; count++)
{
myCar.accelerate();
cout << "The current speed is: " << myCar.getSpeed()
<< " mph." << endl;
}

for ( count = 0; count < 5; count++)
{
myCar.brake();
cout << "The current speed is: " << myCar.getSpeed()
<< " mph." << endl;
}

system ("pause");

return 0;
}

最佳答案

在这段代码中:

 Car::Car(int carYearModel, string carMake)
{
int yearModel = carYearModel;
string make = carMake;
int speed = 0;
}

您没有分配给 Car 对象的数据成员。相反,您要声明与字段同名的局部变量,然后分配给这些局部变量。

要解决此问题,请删除类型:

 Car::Car(int carYearModel, string carMake)
{
yearModel = carYearModel;
make = carMake;
speed = 0;
}

希望这对您有所帮助!

关于C++ 返回值显示 -858993460,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23301918/

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