如何使用boost

时间:2016-11-28 13:03:48

标签: c++ boost graph unresolved-external graphml

我不知道如何使用boost从graphml文件加载图形。我能够保存graphml文件,但无法加载。

我的图表的类型为

 typedef  boost::labeled_graph<boost::adjacency_list<
        boost::listS, boost::vecS, boost::directedS,
        Vertex, Edge>, int> Graph;
 Graph graph;

我的加载功能看起来像。

boost::dynamic_properties dp(boost::ignore_other_properties);

dp.property("IdV", boost::get(&Vertex::ID, graph.graph()));
dp.property("LabelV", boost::get(&Vertex::Name, graph.graph()));
dp.property("TypeV", boost::get(&Vertex::Type, graph.graph()));

dp.property("WeightE", boost::get(&Edge::Weight, graph.graph()));
dp.property("TypeE", boost::get(&Edge::Type, graph.graph()));
dp.property("LabelE", boost::get(&Edge::Name, graph.graph()));

std::ifstream dot(std::string(inputPath) + "");
boost::read_graphml(dot, graph.graph(), dp);

我收到此错误消息:

  

[ilink64 Error]错误:未解析的外部   &#39; boost :: read_graphml(std :: istream&amp;,boost :: mutate_graph&amp ;, unsigned   很长)&#39;引用自...... \ GRAPH_UNIT.O

有人能给我一个简单的好例子,如何在boost中读取graphml文件。我刚刚发现了以下两个例子 - 我认为我的代码是一样的吗?

Boost read_graphml examplehttps://stackoverflow.com/questions/16667175/using-vertex-name-when-reading-a-graphml-file-with-boost-graph

或者有人可以在我的代码中看到错误吗?

最佳

迈克尔

1 个答案:

答案 0 :(得分:0)

Boost.Graph库在使用时不是标题库,例如。 g。,read_graphml()。您只需要链接到boost图库,另请参阅boost::read_graphml visual studio 2013