0

我有一个结构,它有一个 boost::heap:.pairing_heap 类型的成员。我的目的是为配对堆传递一个比较函数(可以是 member ,但不是必需的)。我怎样才能做到这一点。我试过这个。

我不明白错误信息。在我看来一切都很好。

struct B{
  //some more fields: irrelevant here
  bool compare_(std::pair<int,int>&, std::pair<int,int>&);
  boost::heap::pairing_heap<std::pair<int,int>, boost::heap::compare<compare_> > in;
 };

bool Block::compare_(std::pair<int,int>& c, std::pair<int,int>& d)
{
   //returns true or false based on some criteria
}

error: type/value mismatch at argument 1 in template parameter list for ‘template<class T> struct boost::heap::compare’
4

0 回答 0