Est-il en quelque sorte possible d'utiliser boost :: object_pool <> :: construct avec des références non const?Comment utiliser boost :: object_pool <> :: construct avec une référence non const comme paramètre ctor?
L'extrait suivant ne compile pas (VS2010):
foo::foo(bar & b)
{
}
static boost::shared_ptr<foo> foo::create(bar & b)
{
return boost::shared_ptr<foo>(foo_pool.construct(b),
boost::bind(& boost::object_pool<foo>::destroy, & foo_pool, _1));
}
VS2010 se plaint de ne pas être en mesure de convertir un bar & à la barre const &. En regardant boost :: object_pool <> :: construire la raison ist claire:
element_type * construct(const T0 & a0)
Je ne peux pas le paramètre cteur const bien. Y a-t-il un truc à faire pour booster :: object_pool > travailler avec ma classe foo?