我似乎无法知道我做错了什么。 这是我的功能:
void City::maxDistances(City A[], int numLines, int &indxCityA, int &indxCityB){
int maxi = computeDistance(A[0],A[1]);
for (int i =0; i < numLines; i++){
for (int j = i +1; j < numLines; j++){...
我想为它做一个原型:
void maxDistances( City[], int , int &, int &) ;
我的原型出了什么问题?错误是:
> prototype for void City::maxDistances(City*, int, int&, int&)' does not match any in class 'City'|
任何帮助?
答案 0 :(得分:3)
这可能意味着原型在类声明之外。它需要在课堂内,例如
class City {
public:
// ...
void maxDistances(City A[], int numLines, int& indxCityA, int& indxCityB);
// ...
};
答案 1 :(得分:0)
你不应该在C ++中使用C风格的数组,除非你有一个非常好的理由,改用std :: vector(或者最适合你的stl容器):
http://www.cplusplus.com/reference/vector/vector/
您发布的代码没有任何问题,它应该可以正常工作,错误在其他地方,(验证您是否包含正确的头文件。)。