Boost Graphic Library に関して別の問題があり、Google で検索したりドキュメントを読んだりしても答えられませんでした。他の質問とは直接関係ないので、新しいスレッドを立てたほうがいいと思います。
隣接レイアウトのグラフがあり、バンドルされたプロパティを使用してノードとエッジのデータにアクセスします。便宜上、Graph に typedef を使用します。したがって、次のように入力することで、たとえば vertex_descriptor 用に保存されているデータにアクセスできます。
Graph[my_vertex_descriptor].setX(4);
Graph[my_vertex_descriptor].setY(10);
ここで、データ格納オブジェクトへの参照を定義して、そのようなものを入力できるようにしたいと思います。
typedef Graph[vertex_descriptor]::type Vertex;
Vertex v = Graph[my_vertex_descriptor];
v.setX(4);
v.setY(10);
これまたは同様のアプローチにより[]operator
、マップの と特定の記述子オブジェクトを使用してアクセスされるマップされた値の不要な再計算を回避しようとします。私の頂点とエッジには多くのデータが含まれているため、特定の状況では、現在のコードはこのデータを処理するために同じ値の多くの再計算を生成します。これは醜いようです。
私がやろうとしていることを達成する可能性があるかどうか、誰かが知っていますか?