所以我使用的是以下類型的提升圖:Boost圖庫多態性捆綁屬性
typedef boost::adjacency_list<boost::listS, boost::vecS, boost:directedS, VertexT, EdgeT> GraphT
VertexT和EdgeT都是類,來保持很多我需要的屬性。這些是捆綁的屬性。我不確定如果我想使用bgl的某些方式是可能的,所以如果您熟悉它們,將會非常感激。
VertexT和EdgeT被假設爲多態基類。我的理解是bgl不是用來指向這些屬性的。如何用BGL處理多態頂點和邊的屬性?我想過使用共享指針,但我更願意自己管理內存。此外,這似乎可以防止在使用boost :: get生成boost佈局的位置圖時出現問題。
現在我已經通過讓頂點包含另一個指向真正的多態類的指針來解決這個問題。但那似乎太複雜了。有什麼建議麼?