On Jun 26, 2004, at 5:33 AM, Tim Rowe wrote:
On Fri, 25 Jun 2004 16:53:51 -0500, Doug Gregor wrote:
Exactly. When the type of the vertex list for an adjacency list is "vecS", the descriptors are just integers. It tends to make many things much easier when this is the case!
Thanks -- is that documented? I couldn't find it.
*Technically* yes, it's documented, as in "you could find something in the docs that says that this is the case." Granted, it's an aside in the description of add_edge for an adjacency_list: "VertexList selector is vecS, and if either vertex descriptor u or v (which are integers) has a value greater than the current number of vertices in the graph, the graph is enlarged so that the number of vertices is std::max(u,v) + 1." I'm going to add a more obvious description into the documentation for our upcoming release. Thanks for pointing out how confusing this was!
And what about when the type of the vertex list is something else -- is the type of boost::graph_traits<G>::vertex_descriptor available to the user for anything more than declaring variables to identify vertices?
Nope, that's it: a vertex descriptor just describes a particular vertex when coupled with an appropriate graph. Doug