C++解决指针内容比较问题

来源:互联网 发布:梁咏琪 胆小鬼 知乎 编辑:程序博客网 时间:2024/05/11 00:04

最近遇到这样的问题:

set里保存的是指针,但是需要的是插入指针内容不重复,这样就需要定义比较函数。

经查阅,set默认是按less比较的,经过多次尝试,发现比较函数应该这样写:

<pre name="code" class="cpp">class Symbol{......}class SymbolLess : public std::binary_function<Symbol, Symbol, bool>{public:bool operator () (Symbol* lhs, Symbol* rhs) const{return lhs->getContent()< rhs->getContent();}};




在使用的时候,set<Symbol*, SymbolLess> Symbols;//所有符号集合

0 0
原创粉丝点击