我的类在我的头文件中定义,在我的.cpp文件中我有:
bool Card::foo(const std::string &trump) const {...}
bool Card::bar(const std::string &trump) const {
bool oof = foo(const std::string &trump);
}
由于某种原因,这不起作用。 XCode发出错误:预期表达式。我尝试时也一样:
bool oof = Card::foo(const std::string &trump);
bool oof = foo(const std::string &trump) const;
答案 0 :(得分:2)
检查
undefined
以下任何一种表达方式:
bool Card::foo(const std::string &trump) const {...}
bool Card::bar(const std::string &trump) const {
bool oof = foo(trump);
}
将重新定义bool oof = foo(const std::string &trump);
bool oof = Card::foo(const std::string &trump);
bool oof = foo(const std::string &trump) const;
以后的
trump
已经定义了它。
答案 1 :(得分:0)
调用foo(const std :: string部分)时不需要/允许类型信息,因为语言不能以这种方式工作。函数声明将需要它,但在调用它时不包括类型。看看伊戈尔的例子。