|
Boost : |
Subject: [boost] [BGL] [PropertyMap] Key param is passed by value in put function
From: Cosimo Calabrese (cosimo.calabrese_at_[hidden])
Date: 2009-11-18 05:59:20
Hi to all,
I've noticed that the put function that takes a generic put_get_helper
map, takes a key param. The question is: why the key param is passed by
value? Is any reason for this? The key value is not modified setting the
property map.
I've noticed it because in my graph type the descriptors are variant,
and so every time I've to set a property map, a new copy of the variant
is created.
I've reported the function below, for sake of comfort. It is in
boost/property_map.hpp
template <class PropertyMap, class Reference, class K, class V>
inline void
put(const put_get_helper<Reference, PropertyMap>& pa, K k, const V& v)
{
static_cast<const PropertyMap&>(pa)[k] = v;
}
Best regards,
Cosimo Calabrese
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk