Я пытаюсь создать простой загрузчик GraphML, используя библиотеки BOOST. У меня есть файл GraphML, и я хочу загрузить его в структуру списка повышенной смежности. Граф является направленным, и единственная информация, которую он хранит, — это имена узлов (0,1,2,...) и ребра от одного узла к другому. Что я сделал:
void loadHierarchy(){
// ...
std::ifstream inFile;
inFile.open("ext.gml", std::ifstream::in);
typedef boost::adjacency_list<> Graph;
Graph g;
boost::read_graphml(inFile, g);
// ...
}
Мне не нужно использовать какие-либо свойства, просто чтобы сохранить всю информацию о графе в списке смежности.
Ошибки, которые я получаю, следующие:
ошибка: неверная инициализация ссылки типа
‘boost::mutate_graph&’
из выражения типа‘loadHierarchy()::Graph’
/usr/include/boost/graph/graphml.hpp:194: ошибка: при передаче аргумента 2 из
‘void boost::read_graphml(std::istream&, boost::mutate_graph&)’
Это должно быть так просто, но, видимо, это не так.