Boost logo

Boost Users :

From: Chris Russell (cdr_at_[hidden])
Date: 2002-09-15 01:19:26


Strange... One last attempt, this time posting through the Yahoo
Groups interface and not directly to gmane.comp.lib.boost.user...

Sorry - my previous post got cut in half somewhere in transit. This
is a
reposting:

What determines when boost::get(Graph, vertex_myproperty_t) returns a
boost::property_map<graph_t, vertex_myproperty>::type vs. a
::const_type?

Suppose:
enum vertex_myproperty_t { vertex_myproperty = 12345};
BOOST_INSTALL_PROPERTY(vertex,myproperty);

typedef property<vertex_myproperty_t, MyPropertyObject, ....>
vertex_properties_t;

typedef adjacency_list<vecS,vecS,bidirectionalS, vertex_properties_t>
graph_t;

typedef property_map<graph_t, vertex_myproperty_t>::type
vertex_myproperty_map_t;

graph_t Graph;

vertex_myproperty_map_t MyMap = get(vertex_myproperty, Graph);

^--- this works as I expected. However, if I try to get a copy of my
property map this way inside a dfs visitor method, my compiler tells
me that
there's no suitable conversion from property_map<graph_t,
vertex_myproperty_t>::const_type to property_map<graph_t,
vertex_myproperty_t>::type (IA32 6.0 Intel compiler). For performance
reasons, I should probably just pass a reference the visitor on
construction
and be done with it for the duration of the algorithm. But why is the
compiler hassling me on this? What am I missing?

Thanks - Chris


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net