Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards


Improving std::min with common_type

An improved std::min function could be written like this:

template <class T, class U>
typename common_type<T, U>::type min(T t, U u)
   return t < u ? t : u;

And now expressions such as:

min(1, 2.0)

will actually compile and return the correct type!