Хранение vertex_descriptors в связанных свойствах

Я работаю над проектом, в котором мне сначала нужно создать определенные структуры ориентированного графа с использованием BGL. Мой вопрос в том, что если я никогда не удаляю вершину после ее добавления в граф, возникнет ли проблема с хранением vertex_descriptors в связанных свойствах?


person Jim    schedule 14.04.2015    source источник
comment
Возможно, вы захотите прочитать немного больше в документации. vertex_descriptor — это своего рода вершина. Это облегченная структура данных, которая ссылается на вершину. Наличие одного в связанных свойствах было бы немного круговым и избыточным. Если ваши дескрипторы являются индексами, такими как size_t, это будет нормально.   -  person pbible    schedule 14.04.2015
comment
мой график использует векторы для вершин и ребер, поэтому я думаю, что они будут целыми числами? в моем случае мне нужно иметь очень индивидуальный обход, для которого было бы полезно сохранить vertex_descriptors,   -  person Jim    schedule 14.04.2015
comment
Я определенно сохранил индекс вершины в свойствах пакета раньше. Так что я думаю, что в вашем случае все будет в порядке. Я думаю, проблемы возникнут с другими графами, где дескриптор не является целым числом. Это просто кажется немного концептуально неудобным. Возможно, вы захотите взглянуть на карты свойств индекса вершины.   -  person pbible    schedule 14.04.2015
comment
предостережение: так я делал. Это может быть не "правильный" путь :)   -  person pbible    schedule 14.04.2015
comment
у вас есть пример карты свойств индекса вершины?   -  person Jim    schedule 14.04.2015
comment
Вот один из моих старых ответов, в котором он используется. typedef boost::property_map< Graph, boost::vertex_index_t>::type VertexIndexMap; затем VertexIndexMap vertexIndexMap = get(boost::vertex_index, G);   -  person pbible    schedule 14.04.2015