C++强制转换运算符.docVIP

  • 0
  • 0
  • 约2.71千字
  • 约 6页
  • 2016-12-21 发布于河南
  • 举报
标准c++中主要有四种强制转换类型运算符: const_cast,reinterpret_cast,static_cast,dynamic_cast等等。 1)static_castT*(a) 将地址a转换成类型T,T和a必须是指针、引用、算术类型或枚举类型。 表达式static_castT*(a), a的值转换为模板中指定的类型T。在运行时转换过程中,不进行类型检查来确保转换的安全性。 例子: class B { ... }; class D : public B { ... }; void f(B* pb, D* pd) { D* pd2 = static_castD*(pb); // 不安全, pb可能只是B的指针 B* pb2 = static_castB*(pd); // 安全的 ... } class B { ... }; class D : public B { ... }; void f(B* pb, D* pd) { D* pd

文档评论(0)

1亿VIP精品文档

相关文档