RTTI机制(运行时类型识别)
RTTI机制(运行时类型识别)
#include <iostream>
#include <typeinfo>
using namespace std;class base{
public:virtual void func();
protected:int m_a;int m_b;
};void base :: func()
{cout<<"base"<<endl;
}class der: public base{
public:void func();
private:int m_c;
};void der :: func()
{cout<<"der"<<endl;
}int main()
{base *p;int n;cin>>n;if (n <= 100){p = new base();}else{p = new der();}cout<<typeid(*p).name()<<endl;return 0;
}
这里用户输入n的值不同,得到的结果也不同。也就是说在编译阶段,编译器无法获取p将要指向的对象,也就没有办法获取数据类型。但是编译器可以在编译阶段做好各种准备,这样程序在运行后可以借助这些准备好的数据来获取类型信息。
RTTI机制(运行时类型识别)相关推荐
- 白话C++系列(27) -- RTTI:运行时类型识别
http://www.cnblogs.com/kkdd-2013/p/5601783.html RTTI-运行时类型识别 RTTI:Run-Time Type Identification. 那么RT ...
- c++ RTTI(运行时类型识别)
通过RTTI,能够通过基类的指针或引用来检索其所指对象的实际类型.c++通过下面两个操作符提供RTTI. (1)typeid:返回指针或引用所指对象的实际类型. (2)dynamic_cast:将基类 ...
- C++知识点54——RTTI(运行时类型识别)
一.RTTI概述 RTTI的功能由两个运算符实现,一个是typeid,用来返回表达式的类型:另一个是dynamic_cast,作用是将基类的指针或引用安全地转为子类的指针或引用 二.typeid ty ...
- C++RTTI(运行时类型识别)与异常处理解析
1:RTTI是在只有一个指向基类的指针或引用时所确定的一个对象的类型 RTTI可以在程序运行时通过某一个对象的只恨确定该对象的类型,方便面向对象编程 测试代码如下 #include"stda ...
- java 运行时类型_Java基础之RTTI 运行时类型识别
运行时类型识别(RTTI, Run-Time Type Identification)是Java中非常有用的机制,在Java运行时,RTTI维护类的相关信息. 多态(polymorphism)是基于R ...
- MFC六大核心机制之二:运行时类型识别(RTTI)
上一节讲的是MFC六大核心机制之一:MFC程序的初始化,本节继续讲解MFC六大核心机制之二:运行时类型识别(RTTI). typeid运算子 运行时类型识别(RTTI)即是程序执行过程中知道某个对象属 ...
- java rtti_举例讲解Java的RTTI运行时类型识别机制
1.RTTI:运行时类型信息可以让你在程序运行时发现和使用类型信息. 在Java中运行时识别对象和类的信息有两种方式:传统的RTTI,以及反射.下面就来说下RTTI. RTTI:在运行时,识别一个对象 ...
- Java RTTI运行时类型识别
RTTI(Run-Time Type Identification),通过运行时类型信息程序能够使用基类的指针或引用来检查这些指针或引用所指的对象的实际派生类型. RTTI提供了以下两个非常有用的操作 ...
- c++远征之多态篇——运行时类型识别(RTTI)
以下内容源于慕课网的学习整理,如有侵权,请告知删除. 1.RTTI(Run-Time Type Information),运行时类型识别. 涉及typeid.dynamic_cast这两个知识点. R ...
最新文章
- 13 款惊艳的 Node.js 框架——第1部分
- 关于我的Android 博客
- Ubuntu18.04 JDK8
- boost::hana::detail模块实现相关算法的测试程序
- php异步检测用户名是否已经存在,AJAX实例-检测用户名是否存在
- 从2D到3D 开发者讲述“街霸V”的美术秘笈
- HTTPS下导出excel失败解决办法
- 我的docker随笔23:修改容器时区和添加中文支持
- paip.软件版本完善计划VC423
- linux为mysql创建gpower_实战:在Java Web 项目中使用HBase
- 斐讯路由器k2p a1刷官改只能刷入k2p_57_v*_*固件无法刷入k2p_mtk_v*_*版本--刷入后无法进入主页面/刷入后无法启动
- 无法复制 文件:无法读源文件或磁盘
- 个人运营app需要多少钱【费用】
- 钉钉机器人智能提醒_使用钉钉机器人定时发送消息
- Dilated Convolution + Receptive Field
- 测开基础串讲-Java基础-测开常用API之Random类
- 最新pycharm安装教程
- excel.h的简单使用
- 十六进制转八进制(C语言版)
- 一百行代码实现的HTML5登录页面
热门文章
- xos详解5:PendSV_Handler
- 通过Windows远程桌面连接将远程文件传输至本地
- 用 pycharm 可视化管理 sqlite 数据库
- 感叹号挖孔屏稳了!iPhone 14 Pro高清概念图曝光:屏占比创5年最高
- 小鹏汽车回应“非法收集人脸数据被罚10万”:误购第三方设备 数据已删除
- 车主高速充电1小时排队4小时 国庆高速公路每日充电量创新高
- 格罗方德今年有望提高汽车芯片产量,并将投入60亿美元扩大产能
- 启科量子加速商业化:量子通信为「盾」,量子计算为「矛」
- 春节假期前5天全国快递处理量达3.65亿件 同比增长224%
- 史上最难吃系列,肯德基就不能好好做鸡吗?