Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用Boost图形库:Boost::可变队列中的属性映射_C++_Boost - Fatal编程技术网

C++ 使用Boost图形库:Boost::可变队列中的属性映射

C++ 使用Boost图形库:Boost::可变队列中的属性映射,c++,boost,C++,Boost,我正在尝试用我定义的自定义节点类型实例化的一个简单版本。使用以下代码段(使用std和boost名称空间,以及所需的全部内容)实例化mutable_queue实例没有问题: 这给了我以下方面的错误: error: no matching function for call to ‘boost::mutable_queue >, std::less, boost::identity_property_map>::push(Node*&)’ mutable_queue.h:100: note:

我正在尝试用我定义的自定义
节点
类型实例化的一个简单版本。使用以下代码段(使用std和boost名称空间,以及所需的全部内容)实例化
mutable_queue
实例没有问题:

这给了我以下方面的错误:

error: no matching function for call to ‘boost::mutable_queue >, std::less, boost::identity_property_map>::push(Node*&)’ mutable_queue.h:100: note: candidates are: void boost::mutable_queue::push(const IndexedType&) [with IndexedType = UnitTest::Node_test()::entry_t, RandomAccessContainer = std::vector >, Comp = std::less, ID = boost::identity_property_map] 错误:调用“boost::mutable_queue>,std::less,boost::identity_property_map>::push(节点*&)”时没有匹配的函数 可变队列。h:100:注意:候选项是:void boost::可变队列::push(const IndexedType&)[带IndexedType=UnitTest::Node\u test()::entry\u t,RandomAccessContainer=std::vector>,Comp=std::less,ID=boost::identity\u property\u map]
我怀疑我不了解如何使用
属性映射
。有人能帮我修复这段代码,也许能解释一下为什么这样做是正确的吗?

我看不出你在哪里调用push,但似乎你在推一个节点*而你应该推一个节点:

::push(Node*&)
它告诉你有一个节点常数的推力&:

push(const IndexedType&)
其中IndexedType=节点

::push(Node*&)
push(const IndexedType&)