static_cast,dynamic_cast,reinterpret_cast,const_cast区别,及用法总结
来源:互联网 发布:激战2人类男性捏脸数据 编辑:程序博客网 时间:2024/05/04 16:37
1.static_cast对类的指针只能转换有继承关系的类。对普通的指针来说只能在void*和其他指针之间转换。它还可转换简单的类型,比如int到char等。不能提供数字到指针的转换。不能提供不同类型指针之间的转换比如int*到char*。
2.dynamic_cast提供安全的转换如果两个指针不存在继承关系转换会失败返回空指针,如果你提供一个错误的指针那样会发生内存访问异常,因为它会去比较两个类型的虚函数表。虚函数表的指针一般放在对象指针最开始的四字节中,你去访问一个错误的地址这样肯定会发生异常。
3.reinterpret_cast提供数字到指针间的转换比如void*到int。提供不同类型指针的强制转换比如int*到char*。不提供int到char的转换。但是处理类指针转换的时候不能用它,它不会自动的调整指针。
4.const_cast把一个const指针转为非const,最好不要用这个转换。
- static_cast,dynamic_cast,reinterpret_cast,const_cast区别,及用法总结
- 用法总结 static_cast、dynamic_cast、reinterpret_cast、和const_cast
- static_cast,const_cast, dynamic_cast,reinterpret_cast用法
- const_cast dynamic_cast reinterpret_cast static_cast用法
- const_cast dynamic_cast reinterpret_cast static_cast用法
- const_cast dynamic_cast reinterpret_cast static_cast用法 .
- static_cast, dynamic_cast, reinterpret_cast, const_cast区别
- reinterpret_cast,const_cast,static_cast,dynamic_cast 总结
- reinterpret_cast,const_cast,static_cast,dynamic_cast 总结
- reinterpret_cast,const_cast,static_cast,dynamic_cast 总结
- reinterpret_cast,const_cast,static_cast,dynamic_cast 总结
- reinterpret_cast,const_cast,static_cast,dynamic_cast 总结
- static_cast、dynamic_cast、const_cast、reinterpret_cast总结
- static_cast,const_cast,dynamic_cast,reinterpret_cast的用法
- static_cast、dynamic_cast reinterpret_cast和const_cast用法
- dynamic_cast、const_cast、static_cast、reinterpret_cast
- static_cast, dynamic_cast, const_cast, reinterpret_cast
- const_cast,reinterpret_cast,static_cast,dynamic_cast
- Ring3下无驱动移除winlogon.exe进程ctrl+alt+del,win+u,win+l三个系统热键,非屏蔽热键
- POJ2488 DFS
- java实现螺旋数组-另类方法
- C++流及文件的操作
- 推广一个ARM论坛
- static_cast,dynamic_cast,reinterpret_cast,const_cast区别,及用法总结
- 转自devXa的百度空间,留个mark,平时有空逆向下
- html 获取客户端屏幕分辨率 传回服务端处理
- 就硕士开题的随想
- Windows下Batch脚本传递参数给Excel VBA
- 从 DLL(动态库)或Lib(静态库)中导出模板函数
- android和javaEE更完美的通信-传递对象
- 马士兵语录
- 推荐两本书[非技术类]