草庐IT

MyComparator

全部标签

c++ - STL priority_queue 复制比较器类

我正在尝试使用自定义比较器创建优先级队列:std::priority_queue,MyComparator>pq;我的问题是MyComparator有一个存储附加状态的方法。因为MyComparator被复制到优先级队列(据我所知),所以我无法在优先级队列持有的MyComparator实例上调用此方法。有没有办法:获得对优先级队列持有的MyComparator实例的访问权,或者:以某种方式通过引用传递原始MyComparator实例 最佳答案 STL容器中使用的比较对象以及STL算法中使用的谓词必须是可复制的对象和方法,算法可以随意