Does C++ allow you to define explicit casts?