Little-known C++: operator auto
A user-defined conversion function enables an implicit or explicit conversion between types. Such, a function has the following form (no return type and no parameters):
struct foo
{
operator int() const {return 42;}
};
foo f;
int i = f; // implicit conversion