【发布时间】:2012-08-19 20:47:55
【问题描述】:
我对 C++ 还很陌生,并试图在类中重载
在我的头文件中,我有:
friend bool operator<(const Tweet& a, const Tweet& b);
在我的类文件中:
inline bool Tweet::operator<(const Tweet& a, const Tweet& b) {
return (a.getID() < b.getID());
}
目前我收到一个错误‘bool Tweet::operator<(const Tweet&, const Tweet&)’ must take exactly one argument
删除Tweet:: 会将错误更改为未定义的引用,删除第二个参数会将错误更改为“必须完全采用两个参数”
PS - 我已经尝试按照Operator overloading 中的相应部分以及一些相关问题进行操作,但后来我得到了各种不同的错误。
【问题讨论】:
-
请注意,由于该函数是友元函数,它应该能够获取私有成员,因此除非我没有看到任何内容,否则不需要获取器。