![](/img/trans.png)
[英]BGL: How do I store edge_descriptors and vertex_descriptors efficiently?
[英]How to use boost vertex_descriptors?
我正在嘗試使用C ++ boost從輸入文件制作圖形,目前我在其中存儲了帶有頂點名稱和邊緣權重的向量。
我知道如何使用以下方法添加頂點:
typedef boost::graph_traits < Graph >::vertex_descriptor Vertex
Vertex v1 = add_vertex(string("v1"), g);
Vertex v2 = add_vertex(string("v2"), g);
Vertex v3 = add_vertex(string("v3"), g);
但是,如何創建一個新的頂點並將其添加到向量中每個元素的圖形上呢?
我將不得不做一些猜測,但是這里是:
for (auto& edge : my_edges_vector)
{
vertex_descriptor sd = g[edge.source_vertex_id];
vertex_descriptor td = g[edge.target_vertex_id];
double weight = edge.weight;
add_edge(g, sd, td, weight);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.