我搜索了很多,但我找不到我想要的答案。
我需要根据键和值对c ++ map进行排序。 类似这种方法:
class ModelServiceProvider implements QueryableServiceProvider {
public function single(SingleStruct $parameters): Model { // This is the line the error references
/** Does the query and returns an instance of Model **/
}
}
并使用类似的东西
bool mycomp(mii::iterator a, mii::iterator b) {
if (a->second > b->second)
return true;
else if (a->second < b->second)
return false;
else
return a->first > a->second;
}
其中m是:
sort(m.begin() , m.end(), mycomp);
我可以做这样的事吗?如果是的话,应该是正确的语法。
答案 0 :(得分:0)
定义std::map
时,您可以提供Compare
函数作为模板参数。有关详细信息,请参阅the reference。
但是,我认为这仅适用于密钥排序。键值排序不是继承到地图结构(即如果值发生变化会发生什么?)