c++中的类型转换(4种转换方式)

本文详细介绍了C和C++中的四种强制类型转换方法:static_cast、dynamic_cast、const_cast和reinterpret_cast,讨论了它们的应用场景、区别以及隐式转换的情况,特别提到了多态性和内存重新解释的使用案例。
摘要由CSDN通过智能技术生成

小编学习网站:https://www.ctvol.com

在C中:

(类型)   强制类型转换

在c++中:

1.static_cast<类型>(变量)

在某一个方向上 可以做隐式类型转换

int *pi =new int(100);

void *pv=pi;

2.dynamic_cast<类型>(变量)

用在具有多态性的父子类之间

3.const_cast<类型>(变量)

专业去处 转换

volatile const int a =100;

告诉编译器该值不稳定,不优化,如果没有C++编译器将启动优化功能

将该函数内用到的a都替换成100;

4.对内存进行重新的解释,最接近强制转换

reinterpret_cast<类型>(变量);

最接近C强制类型转换

比如把一个指针变成整数,把一个整数翻译成地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值