> At least what I read here is following:
> All instances v of type variant<T1,T2,...,TN> guarantee that v has constructed content of !!!one!!! of the types !!!Ti!!!, even if an operation on v has previously failed.
> For me it means that it can be T2 or TN as well.
 
Right, but the 1st link says:
"boost::variant< int, std::string > v;
By default, a variant default-constructs its first bounded type, so v initially contains int(0). If this is not desired, or if the first bounded type is not default-constructible, a variant can be constructed directly from any value convertible to one of its bounded types. "


Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy! Try it!