[英]BGL: bundled object without a default constructor?
這個問題是關於Boost Graph Library
。
假設我的圖形類型定義如下:
using Graph = boost::adjacency_list<vecS, setS, directedS, State>;
現在,如果我理解正確的話,我可以添加一個新的State
目標s
像這樣的圖表:
auto vd = add_vertex(g); // g is a Graph object
g[vd] = s;
這種方式有兩個問題:
它要求State
具有默認的構造函數。 在這個特定的類State
的情況下,默認構造函數根本沒有意義。
這樣,在添加頂點時,我將為State
對象的默認構造付費。 此成本是純運行時開銷。
因此,有沒有一種方法可以避免對捆綁對象使用默認構造函數?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.