Używam pakietów właściwości i adjacency_list i chciałbym użyć klasy subgraph.Podnieś subgraph i właściwości w wiązce
struct Vertex
{
int index;
int seed;
};
struct Edge
{
bool visted;
double weight;
};
typedef adjacency_list<listS, listS, undirectedS, Vertex, property<edge_index_t,int,Edge> > Graph;
typedef subgraph<Graph> testSubgraph;
property<edge_index_t,int,Edge>
część jest potrzebna, jako subgraph potrzebuje edge_index_t
porównać dwie krawędzie.
Teraz moje pytanie brzmi, w jaki sposób dodać Edge za pomocą dołączonych właściwości w Subgraph? W normalnym wykresie bez property<edge_index_t,int,Edge>
dodam przewagę w następujący sposób:
Edge e;
vertex_descriptor u,v;
// fill in u and v;
e.weight = 1.0;
e.visted=false;
add_edge(u,v,e,graph);
Ale to nie działa dla podgrafu.
Mam nadzieję, że ktoś zna rozwiązanie tego problemu.
Dzięki
Ben
Jeśli po prostu dodaję indeks size_t do mojej struktury Edge, to nadal nie znajdzie tego indeksu, ponieważ jest potrzebny w 'propertey' –
Ben