Я не знаю, как загрузить график из файла GraphML с Boost. Я могу сохранить файл 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] Ошибка: Неразрешенная внешняя
«Подталкивание :: read_graphml (станд :: IStream&, повысить :: mutate_graph&без знака
долго долго) »ссылка от … \ GRAPH_UNIT.O
Может кто-нибудь дать мне хороший и простой пример, как прочитать файл GraphML в Boost. Я только что нашел следующие 2 примера — я думаю, что мой код такой же?
Повысьте пример read_graphml а также
https://stackoverflow.com/questions/16667175/using-vertex-name-when-reading-a-graphml-file-with-boost-graph
или кто-то может увидеть ошибку в моем коде?
Лучший
Майкл
Библиотека Boost.Graph не является библиотекой только для заголовков при использовании, e. например, read_graphml (). Вам просто нужно связаться с библиотекой графов наддува, см. Также boost :: read_graphml visual studio 2013.
Других решений пока нет …