hi list, Let me explain this in more detail. Say, if one want to renew an object of some type which may be hold by a variant, and not care about the object's old data, he may do somthing like: // assure variant hold object of type T if(var.which() != T's index) var = T(); // 2 visitation + copy T& t = boost::get<T>(var); // 1 visitation // process t If we have T& t = var.assign(T()), 1 visitation can be eliminated. If we have T& t = var.construct<T>(...), only 1 visitation and optionally 1 in place construction are needed. regars. -- View this message in context: http://boost.2283326.n4.nabble.com/variant-assign-and-access-the-assigned-va... Sent from the Boost - Dev mailing list archive at Nabble.com.