[C/C++]_[中级]_[static_cast的详细解析]
Posted infoworld
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[C/C++]_[中级]_[static_cast的详细解析]相关的知识,希望对你有一定的参考价值。
场景
- 在
C++
开发时,会看到四个强制类型转换操作符const_cast
,dynamic_cast
,static_cast
和reinterpret_cast
。其中static_cast
的用在什么场景下?
说明
static_cast
是不安全的转换,不会对类型进行检查。只在一种情况下进行简单检查,即没有继承关系的对象不能转,编译报错。通常用在把指向基类的指针转换为指向子类的指针;可以用在数值类型int
,char
,enum
,float
,double
等之间的转换;一般用在非多态(无virtual
)的类型转换中。
static_cast <type-id> ( expression )
基类向
以上是关于[C/C++]_[中级]_[static_cast的详细解析]的主要内容,如果未能解决你的问题,请参考以下文章
[C/C++]_[中级]_[static_cast的详细解析]
[C/C++]_[初级]_[static_cast,reinterpret_cast,dynimic_cast的使用场景和区别]
错误 C2440: 'static_cast' : 无法从 'UINT (__thiscall CImportProjectDlg::* )(CPoint)' 转换为 'LRESULT (__this