Subject: [boost] [container] Issues with non-copyable mapped-types
From: onlyone_at_[hidden]
Date: 2011-09-15 03:21:02


Hi,

I have been trying to use Boost.Container to make a map<copyable_but_not_moveable, moveable_but_not_copyable>.

Unfortunately I have been unable to do this because the value_type of boost::container::map is std::pair, which does not support move semantics (in C++03). This causes problems for the moveable_but_not_copyable type. It means that, for example:

    myMap[copyable_but_not_moveable()];

does not compile. This behaviour is fully supported in C++11 mode, and I see no reason why a custom C++03 pair class would be unable to use the Boost.Move emulation to achieve the same effect.

Regards, Evan Wallace