彩票走势图

C++开发必看:四种强制类型转换的总结

转帖|其它|编辑:郝浩|2011-09-02 15:38:34.000|阅读 382 次

概述:本文主要介绍C++四种强制类型转换的总结,希望对大家有帮助。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

  C风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是:

   C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用。

   const_cast,字面上理解就是去const属性。

   static_cast,命名上理解是静态类型转换。如int转换成char。

   dynamic_cast,命名上理解是动态类型转换。如子类和父类之间的多态类型转换。

   reinterpreter_cast,仅仅重新解释类型,但没有进行二进制的转换。

   4种类型转换的格式,如:

   const_cast

   类似于C风格的强制转换。无条件转换,静态类型转换。用于:

   1. 基类和子类之间转换:其中子类指针转换成父类指针是安全的;但父类指针转换成子类指针是不安全的。(基类和子类之间的动态类型转换建议用dynamic_cast)

   2. 基本数据类型转换。enum, struct, int, char, float等。static_cast不能进行无关类型(如非基类和子类)指针之间的转换。

  3. 把空指针转换成目标类型的空指针。

   4. 把任何类型的表达式转换成void类型。

   5. static_cast不能去掉类型的const、volitale属性(用const_cast)。

 


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:网络转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP