什么时候应该使用static_cast,dynamic_cast,const_cast和reinterpret_cast?
const_cast
可用于删除或将const添加到变量。如果有必要从变量中添加/删除常量,这将很有用。
static_cast
这用于普通/普通类型转换。这也是负责隐式类型强制的强制转换,也可以显式调用。在将float转换为int,将char转换为int等情况下,应使用它。
dynamic_cast
此演员表用于处理多态。您只需要在转换为派生类时使用它。从基类转换为派生类时,只能在继承中使用它。
reinterpret_cast
这是最棘手的用法。它用于重新解释位模式,并且级别极低。它主要用于将原始数据位流转换为实际数据,或将数据存储在对齐的指针的低位中。