C++ 双astrik语法&;帮助调用成员函数
我在做一个有航空班的项目。Airline类包含一个对动态Flight对象数组有效的变量 在我的航空公司课程中(无法编辑或更改,这是分配给我的头文件):C++ 双astrik语法&;帮助调用成员函数,c++,syntax,C++,Syntax,我在做一个有航空班的项目。Airline类包含一个对动态Flight对象数组有效的变量 在我的航空公司课程中(无法编辑或更改,这是分配给我的头文件): 我正在尝试实现类中的一个find方法 为此,我: Flight* Airline::find(int flightNum){ bool found = false; for(int i = 0; i < size; i++){ if(array[i].getflightNum() == flight
我正在尝试实现类中的一个find方法 为此,我:
Flight* Airline::find(int flightNum){
bool found = false;
for(int i = 0; i < size; i++){
if(array[i].getflightNum() == flightNum){
found = true;
return array[i];
}
}
if(!found)
return 0;
}
// Return pointer to flight with given number if present, otherwise
// return 0.
Flight*航空公司::查找(int flightNum){
bool-found=false;
对于(int i=0;i
但这意味着在尝试调用getFlightNum()方法时需要一个类类型。我真的不明白这个错误。我没有正确调用该方法吗?正确的语法是什么?由于您处理的是指针而不是实际对象,请尝试以下方法:
if(array[i]->getflightNum() == flightNum){ // Notice I am using -> instead of .
found = true;
return array[i];
}
由于您处理的是指针而不是实际对象,请尝试以下操作:
if(array[i]->getflightNum() == flightNum){ // Notice I am using -> instead of .
found = true;
return array[i];
}
尝试
array[i]->getflightNum()
您还可以从Airline::find
中删除found
的所有实例,因为当您找到该项时,您会立即从函数返回。因此,如果(!found),您也不需要,如果您在代码中找到了该点,那么您就没有找到该项,也不需要检查返回0
。请尝试数组[i]->getflightNum()
您还可以从Airline::find
中删除found
的所有实例,因为当您找到项目时,您会立即从功能中返回。因此,如果(!found)
,您也不需要,如果您在代码中找到该点,那么您就没有找到该项,也不需要检查返回0
。
if(array[i]->getflightNum() == flightNum){ // Notice I am using -> instead of .
found = true;
return array[i];
}