October 01, 2000
An Improved Variant Type Based on Member Templates
Listing 1: Definition of class variant0_t
struct variant0_t
{
variant0_t():data(NULL){}
template<typename T> variant0_t(const T& v)
: data ( &v ) {}
template<typename T> operator T () const
{ return * reinterpret_cast<const T*>(data); }
const void* data ;
} ;
|
|
||||||||||||||||||||||||||||
|
|
|
|