使用std:set時,如果insert進入的類型爲自定義的類則,在沒有重寫std::operator <時就會編異異常:error C2784: 'bool std::operator <(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)' : could not deduce template argument for 'const std::reverse_iterator<_RanIt> &' from 'const TConfig'
處理方式:
如增加std::operator <後的類如下
class TConfig
{
private:
int _id;
string _groupName;
public:
void SetId(int id) { _id = id; }
void SetGroupName(string groupName){ _groupName = groupName; }
bool operator< (TConfig const & that) const {
return _id < that._id;
}
};