class Test
{
public:
int v;
Test(int s)
{
v = s;
}
bool operator < (const Test & b) const
{
return v < b.v;
}
};
int main()
{
set <Test> t2;
return 0;
}
爲什麼當我重載less操作符時,我必須使用const函數?如果我不寫「const」,它不會通過編譯。所以我不知道爲什麼我必須在那裏寫「const」?爲什麼STL <set>重載運算符<函數必須是const函數?
因爲在比較對象時修改對象沒有意義。 – 2014-09-28 08:46:44