Some operators cannot be overloaded. These operators take a name, not an object, as their right operand:
The conditional operator (? :) also cannot be overloaded.
In addition, new type operators: static_cast <>, dynamic_cast <>, reinterpret_cast <>, and const_cast <>, and preprocessor tokens # and ## cannot be overloaded.
http://www.informit.com/guides/content.aspx?g=cplusplus&seqNum=23
source share