Lemon图库C++将值映射为函数参数错误

Lemon Graph Library C++ Map values as function arguments error

本文关键字:函数 参数 错误 映射 图库 C++ Lemon      更新时间:2023-10-16

我是C++和Lemon的新手,我对Lemon图库有以下问题。我想创建一个函数,它获取一个"map"作为输入变量。类似这样的东西:

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

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

lemon-1.3lemonbitsvector_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|

这是否意味着不可能创建具有映射类型参数的函数?

谢谢你的帮助!

您必须通过引用传递它:

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