这是一道面试题。
参考示例代码,其中一个运算符需要被覆盖才能使用
std::set<Value>
#include<iostream>
class Value
{
std::string s_val;
int i_val;
public:
Value(std::string s, int i): s_val(s) , i_val(i){}
};
// EOF
/*
a operator !=
b operator >
c operator <=
d operator >=
e operator <
*/
实际上,我不明白为什么需要在这里覆盖运算符。"set" 不允许重复元素,也许 operator != 需要被覆盖?