我不确定我的项目做错了什么。我有两个文件,一个airports.h头文件和一个主源文件。在主源文件中,我有
string code,name;
int deptax, conntime;
cin >> code >> name >> deptax >> conntime;
Airport myAirport(code,name,deptax,conntime);
cout << myAirport.getCode << endl;
在airports.h头文件中我有
class Airport{
public:
Airport(string code, string name, int departureTax, int connectionTime)
:code(code),
name(name),
departureTax(departureTax),
connectionTime(connectionTime)
{...}
string getCode(){
return code;
}//then getName, getDepTax, getConnTime...
}
当我运行主源文件时,我得到错误"错误C3867:‘Airport::getCode’:函数调用缺少参数列表;使用‘&Airport:;getCode’创建指向成员的指针",位于上面的第5行。
我是一个初学者,所以我不知道为什么它告诉我要这么做。.getCode()不应该按照它的编写方式工作吗?当我在网上寻找以前的解决方案时,解决方案总是与"指向成员的指针"错误无关,所以我认为我可能只是在以一种不应该使用的方式使用c++。
cout << myAirport.getCode() << endl;
注意调用函数所需的括号。要求()存在的原因是,一个没有()的函数实际上有一个有效的含义,而且它与调用该函数完全不同。
您需要调用您的函数
myAirport.getCode()
而不是
myAirport.getCode
中缺少()
cout << myAirport.getCode << endl;
在getCode之后,应该是getCode()