我正在为一项任务构建一个比较器,但我很紧张,因为这看起来很简单,但我想不通。
这个函数给我带来了麻烦:
int compare(Word *a, Word *b)
{
string *aTerm = a->getString();
string *bTerm = b->getString();
return aTerm->compare(bTerm);
}
Word::getString 返回一个字符串*
错误:
In member function `virtual int CompWordByAlpha::compare(Word*, Word*)':
no matching function for call to...
...后面是一堆函数定义。
有什么帮助吗?
最佳答案
您正在将字符串与字符串指针进行比较,这是无效的。你要
return aTerm->compare(*bTerm);
关于C++ string.compare(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1070882/