Я пытаюсь получить доступ к метке графа для форматированного входного файла dot (graphviz) с использованием библиотеки Boost Graph. Ниже ЬурейеЕ для типа графа:Доступ к BGL GraphProperty
struct DotVertex {
std::string label;
};
struct DotEdge {
std::string label;
};
struct DotGraph {
std::string label;
};
typedef boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS,
DotVertex, DotEdge, DotGraph> graph_t;
И это, как я задаю динамические свойства:
graph_t graphviz;
boost::dynamic_properties dp(boost::ignore_other_properties);
dp.property("label", boost::get(&DotGraph::label, graphviz));
dp.property("label", boost::get(&DotVertex::label, graphviz));
dp.property("label", boost::get(&DotEdge::label, graphviz));
std::ifstream ifs("sample.dot");
bool status = boost::read_graphviz(ifs, graphviz, dp);
Компилятор жалуется на задание на DotGraph :: наклейке с ошибкой сообщение:
read_graph.cc:25:30: error: no matching function for call to 'get' dp.property("label", boost::get(&DotGraph::label, graphviz));
Может ли кто-нибудь указать, что является удобным способом прочитать метку графа в этом случае? Благодаря!
я забыл об этом, хотя я написал ответ связан с :) – sehe