简述C++四种强制类型转换机制

文章目录

    • dynamic_cast运算符
    • const_cast运算符
    • static_cast运算符
    • reinterpret_cast运算符


C++支持C风格的强制转换,C风格的类型转换运算符太过松散,可能会带来一些隐患,让一些问题难以察觉。

TypeName b = (TypeName)a;

C++提供了一组可以用在不同场合的强制类型转换的函数。

  • dynamic_cast
  • const_cast
  • static_cast
  • reinterpret_cast

可以根据目的选择一个适合的运算符,而不是使用通用的类型转换。这指出了类型转换的原因,并让编译器能够检查程序的行为是否与设计者的想法吻合。


dynamic_cast运算符

你可能感兴趣的:(C++程序设计)