struct compare{
bool operator() ( const string& a , const string& b ) const{
return a.size() < b.size ();
}
};
multiset<string , compare> stg;
我正在解决一个问题,我想根据字符串长度对multiset进行排序。我在互联网上搜索它并得到了这个结构。它对我有用..但我想知道它是如何工作的......
我只是对这行代码感到困惑。到目前为止,我认为结构只能包含变量,而不是函数。 它是否类似于在类中重载。
bool operator() ( const string& a , const string& b ) const{
答案 0 :(得分:1)
C ++中的结构可以包含代码,但它通常是一个坏主意,因为你没有获得与类相同的封装级别。
但是,C中的结构只是结构,不能包含代码。