I thought understood what boost::reference_wrapper was all about, and in the context
of, say Boost.Bind, it seems pretty clear.

But why would you define a function to RETURN a reference_wrapper? eg

template <class T> struct X
{
     std::pair<boost::reference_wrapper<T>, unsigned> getSomething(....) const;
};

I suspect I'm having a 'doh' moment here!

Thx,

- Rob.