|
Boost : |
From: Vladimir Prus (ghost_at_[hidden])
Date: 2001-11-05 04:32:48
I've got several problems with BGL:
1. 'isomorphism' has problems with directed graph. The following does not
compile:
[ includes skipped]
int main()
{
adjacency_list<vecS, vecS, directedS> g1, g2;
isomorphism(g1, g2);
}
When 'undirectedS' is used, it compiles. Is it my fault, or BGL's?
2. Semantics of num_vertices when applied to filtered_graph is non-intiutive,
but is not stated explicitly in docs. In truth, it should be better to fix,
yet I have no idea how this can be easily done --
vector<whatever> v(num_vertices(g)) is an idiomatic usage and changing
num_vertices semantics for filtered_graph will break it. The only way I see
to deal with it, it to deprecate vector usage, and create
resizable-on-subscript container specially for BGL.
3. filtered_graph cannot be made from const graph, since ctor takes non-const
parameter. This requires making copy of the original graph. Is it the
recommended way, of just filtered_graph for const underlying graph is not
implemented?
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk