0

我是 C++ 和 Lemon 的绝对新手,我对柠檬图形库有以下问题。我想创建一个函数,将“地图”作为输入变量。像这样的东西:

bool augment(Graph &g, Graph::EdgeMap<int> sol_edge)
   {
     //do something
   }

但是当我尝试构建它时,我收到以下错误:

\lemon-1.3\lemon\bits\vector_map.h|110|error: 'lemon::VectorMap<_Graph, _Item, _Value>::VectorMap(const lemon::VectorMap<_Graph, _Item, _Value>&) [with _Graph = lemon::GraphExtender<lemon::ListGraphBase>; _Item = lemon::ListGraphBase::Node; _Value = bool; lemon::VectorMap<_Graph, _Item, _Value> = lemon::VectorMap<lemon::GraphExtender<lemon::ListGraphBase>, lemon::ListGraphBase::Node, bool>]' is private|

这是否意味着无法创建具有映射类型参数的函数?

感谢您提供任何帮助!

4

1 回答 1

0

您必须通过引用传递它:

bool augment(ListGraph& g, ListGraph::EdgeMap<int>& sol_edge)    {
    //do something
}
于 2014-06-25T14:44:37.810 回答