C++ Cast Operators
C++ named casts make the kind of conversion explicit. Each has a narrow purpose: compile-time conversions, checked polymorphic downcasts, constness changes, or low-level representation conversions.
Explicit conversions with static_cast, dynamic_cast, const_cast, and reinterpret_cast.