// An erroneous implementation of a compile-time float.
template<int iMantissa, int iExponent = 0> struct CFloat
{
operator const float ( ) const
{
return ( iExponent < 0 ) ?
float ( mantissa ) / CPower<10, iExponent>::result :
mantissa * CPower<10, iExponent>::result;
}
} ;