dynamic_cast---动态操作
来源:互联网 发布:网络上贷款不还怎么办 编辑:程序博客网 时间:2024/06/05 09:55
dynamic_cast---动态操作
作用:将基类类型对象的引用或者指针转换为同意继承层次中其他类型的引用或者指针;
注意事项:dynamic_cast在运行时类型检查。分为两个操作:1.验证被请求的转换是否有效 2. 进行转换。
为什么验证工作必须在运行时检查?
答:因为引用或者指针绑定的对象的类型在编译时是未知的,基类的指针(或者引用)可以赋值为派生类对象。
利用C++ primer(4) 647页的例子:
说明: derivedPtr是派生类指针,basePtr是基类指针,功能是将基类的指针转换成派生类的指针,编译的
过程中不检查类型转换,在运行程序的过程中才进行检查。
基类指针转换为派生类指针:
dynamic_cast<派生类指针>(指向基类对象的指针);
积累指针转化为派生类引用:
dynamic_cast<派生类应用>(基类对象);
因为不存在空引用(指针是有空指针的,可以通过空指针0来判断,这点引用不同),所以不可能对引用使用用于指针强制类型转换的检查策略???
- dynamic_cast---动态操作
- dynamic_cast操作符
- dynamic_cast 操作符
- C++ dynamic_cast操作符
- dynamic_cast 动态强制类型转换
- dynamic_cast操作符的用法
- C++中的dynamic_cast 操作符
- dlopen动态库后dynamic_cast的问题
- dlopen动态库后dynamic_cast的问题
- C++多继承动态交叉转换dynamic_cast
- dynamic_cast
- Dynamic_cast
- dynamic_cast
- dynamic_cast
- dynamic_cast
- dynamic_cast
- dynamic_cast
- dynamic_cast
- 诺西并购摩托罗拉资产再次延期 华为不做出评价
- 自绘菜单
- VC用法汇总
- 设计模式(博客园精化集)
- 用Mixer API函数调节控制面板的音频设置
- dynamic_cast---动态操作
- 第一次开博
- 云计算物联网等工程实施计划提交人大审议
- 2011年计算机类会议汇总
- WinCE 6.0 的IDE编译菜单与命令行的对应关系
- 五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT) – 整理
- Linux内核模块编程初识
- 常用经纬度转换为ntu经纬度
- REDHAT EL6网卡静态地址