1
BGLを使用してグラフの計算を行う関数を書いています。計算がどのように行われるかは、グラフが指示されているかどうかによって異なりますが、無向グラフと有向グラフの2つの異なる関数を書くことは避けたいと思います。グラフは、グラフオブジェクト自体から導かれているか否かを確認する方法はありブーストグラフライブラリ:グラフが指示されているかどうかの確認
using namespace boost;
// Undirected
typedef adjacency_list<listS, vecS, undirectedS> UGraph;
// Directed
typedef adjacency_list<listS, vecS, bidirectionalS> DGraph;
次のようにグラフの両方のタイプが定義されていますか?言い換えれば、グラフオブジェクトから、使用される "directedness"特性(すなわち、無向S、双対Sまたは有向S)を知る方法がありますか?