
I figure it out when I tried to put a label= 600000000, my computer ran out of memory. I changed from uint64_t to int64_t. Now it is properly working. Cheers, /** * Choose the default map instance. If Label is an unsigned integral type * the we can use a vector to store the information. */template <typename Label, typename Vertex>struct choose_default_map { typedef typename mpl::if_< is_unsigned<Label>, std::vector<Vertex>, std::map<Label, Vertex> // TODO: Should use unordered_map? >::type type;}; On Fri, Dec 7, 2012 at 3:52 PM, Andrew Sutton <asutton.list@gmail.com>wrote:
I have checked the internal map. If I add a single node in the graph, map.size() == 42. Instead of 1 ! If I add 5 nodes size() == 248.
So any label number inferior to map.size() will give false results ...
What's going on ?
It looks like a broken assumption in the design of labeled_graph (which is mostly experimental), that any use of integral labels would be in the range [0, num_vertices(g)). When you insert a new label, it is automatically resizing the container to accommodate your new label.
You may be better off not using labeled_graph.
Andrew _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users