请教关于重载的函数在与STL算法匹配时的问题

silently 2004-02-27 11:11:53
在做编译器作业时,我为符号表写了一个类,重载了函数<
class Symbol
{
......
bool operator< (Symbol& str){
return this->s.first < str.symValue();//这两个操作数都是string型的
}
在我调用lower_bound()算法时出现了问题

i = lower_bound(table.begin(), table.end(), s);
[C++ Error] _function_base.h(73): E2093 'operator<' not implemented in type 'Symbol' for arguments of the same type

我明明已经重载了操作符operator<,为什么出现这种提示呢?
其中table的类型为vector<Symbol>,s的类型为Symbol
...全文
6 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复

还没有回复,快来抢沙发~

相关推荐
发帖
工具平台和程序库
创建于2007-09-28

2.4w+

社区成员

C/C++ 工具平台和程序库
申请成为版主
帖子事件
创建了帖子
2004-02-27 11:11
社区公告
暂无公告