原文:C++中的四种类型转换运算符static_cast、dynamic_cast、const_cast和reinterpret_cast的使用

上一遍讲述了C语言的隐式类型转换和显示类型转换,C语言之所以增加强制类型转换,就是为了强调转换的风险性,但这种强调风险的方式是比较粗放了,粒度比较大,它并没有表明存在什么风险,风险程度如何。 为了使潜在风险更加细化,使问题追溯更加方便,使书写格式更加规范,C 对类型转换进行了分类,并新增了四个关键字来予以支持,它们分别是: 关键字 说明 static cast 用于良性转换,一般不会导致意外发生 ...

2019-09-04 11:24 0 552 推荐指数:

查看详情

c++ 数据类型转换static_cast dynamic_cast reinterpret_cast const_cast

【目录】 引言 static_cast 定义 dynamic_cast 定义 举例:下行转换(把基类的指针或引用转换成子类表示) 举例:上行转换(把子类的指针或引用转换成基类表示) 举例: static_cast 用于基本类型之间、基本类型指针和空指针间的转换 ...

2013-07-06 23:32 0 10790
C++-类型转换(static_cast, const_cast, reinterpret_cast)

static_cast 表示静态变量的类型转换, 如int->char, 不合适的类型转换将会发生错误 const_cast 表示const类型和非const类型的相互转换 reinterpret_cast 表示进行隐式转换 ...

2020-03-31 19:02 0 606
C++四种转换(const_caststatic_castdynamic_cast、reinterpreter_cast)

static_cast 相当于C语言中的强制转换:(类型)表达式或类型(表达式),用于各种隐式转换constconst、void*转指针、int和char相互转换 用于基类和子类之间的指针和引用转换,非指针直接报错 向上转化是安全的,如果向下转能(指针或引用)成功但是不安全,结果未知 ...

2019-08-30 20:55 0 823
 
粤ICP备18138465号  © 2018-2023 CODEPRJ.COM