c++ - c++中成员函数重载的问题
问题描述
我对构造函数和成员函数有疑问。当我尝试编译程序时,它显示:错误:
'int Vehicle::range()' 不能被重载。
在这种情况下我该怎么办?
#include <iostream>
using namespace std;
class Vehicle{
public:
int passengers;
int fuelcap;
int mpg;
int range();
Vehicle(int p,int f,int m);
int range();
};
Vehicle::Vehicle(int p,int f,int m){
passengers=p;
fuelcap=f;
mpg=m;
}
int Vehicle::range(){
return mpg*fuelcap;
}
我没有显示主要功能,因为问题必须在这里。
我预计输出为 336 和 168。
解决方案
你在Vehicle::range
类体内声明了两次:
int range();
Vehicle(int p,int f,int m);
int range();
删除第二个,它应该可以工作。
这是一个最小的例子,复制你得到的错误。
推荐阅读
- python - 根据另一个数据框中的字符串计数分配值
- python-3.x - 是否可以使用 tf.GradientTape() 创建一个可以产生二阶、三阶或 n 阶梯度的函数?
- c# - C# ASP.NET MVC:开发具有正在运行的任务和 ASP.NET MVC Web UI 来控制/监视它的应用程序
- android - 从 onTouchEvent 函数获取 Android 中 SurfaceView 的像素
- python - 如何解决“int”对象不可调用错误
- windows - ism 文件中设置的 INSTALLSOURCE 属性在哪里
- flutter - 有条件的颜色变化 Dart Flutter
- amazon-web-services - 在 AWS IOT 核心 (MQTT) 中接收长影文档时出错
- flutter - 如何使用 intl_phone_number_input 使国家代码进入 Flutter 的表单字段中
- javascript - 如何以角度解决“无法在模块外使用导入语句”