里程表程序.请向我建议一些有关此错误的建议

Odometer program. please suggest me some suggestions regarding this error

本文关键字:错误 程序 里程表      更新时间:2023-10-16

我的要求:

定义一个名为 Odometer 的类,该类将用于跟踪机动车辆的燃料和里程。 该类应具有成员变量来跟踪行驶里程和车辆的燃油效率(以英里/加仑为单位)。 包括用于将里程表重置为零英里的突变器函数、用于设置燃油效率的突变器函数、接受行程行驶里程并将其添加到里程表总数的突变器功能,以及返回自上次重置里程表以来车辆消耗的汽油加仑数的访问器方法。

将您的班级与测试程序一起使用,该程序可以创建具有不同燃油效率的多个行程。

  #include <iostream>
 using namespace std;
 class Odometer
  {
 public:
Odometer();
void reset();
void totalfuel();
void input_miles(int getmiles);
void Odometer::set_fuel_efficiency(double fuel_efficiency);
double Odometer::getgallons();
int gallonsUsed;
  private:
int milesDriven;
double fuel_efficiency;
int getmiles;   
};
Odometer::Odometer()
{   
milesDriven = 0;
fuel_efficiency = 0;    
}
void Odometer::reset()
 {
milesDriven = 0;
}
void Odometer::totalfuel()
{
fuel_efficiency = (milesDriven/gallonsUsed);
}
void Odometer::input_miles(int miles_driven)
{
milesDriven = milesDriven + miles_driven;
}
 void Odometer::set_fuel_efficiency(double Fuel_efficiency)
 {
fuel_efficiency = Fuel_efficiency;
 }
 double Odometer::getgallons()
 {
return milesDriven/fuel_efficiency;
 } 

 int main()
 {
  Odometer CarOdometer;
  int number_of_miles_driven;
   double fuel_efficiency;
  cout << "Please enter the amount of miles driven : " << endl;
   cin >> number_of_miles_driven;
CarOdometer.input_miles(number_of_miles_driven);

cout << "Enter Fuel Amount: " << endl;
cin >> fuel_efficiency;
 return 0;
  }

错误:

main.cpp:16:7: error: extra qualification �Odometer::� on member �set_fuel_efficiency� [-fpermissive]
  void Odometer::set_fuel_efficiency(double fuel_efficiency);
       ^
main.cpp:18:9: error: extra qualification �Odometer::� on member �getgallons� [-fpermissive]
  double Odometer::getgallons();

只需更改

void Odometer::set_fuel_efficiency(double fuel_efficiency);
double Odometer::getgallons();

void set_fuel_efficiency(double fuel_efficiency);
double getgallons();

您的成员函数声明具有封闭类的限定条件。根据C++标准,这是无效的:

class Odometer {
    void Odometer::member();
};

只需从成员声明中删除多余的资格:

class Odometer {
    void member();
};