C++ typeid 与RTTI(Runtime Type Information)
2015-10-30 15:12
302 查看
在c++中,typeid用于获知一个变量的具体类型。它是一个操作符,而不是函数!运行时获知变量类型名称,可以使用 typeid(变量).name。
RTTI 是Runtime Type Information的缩写,它提供了运行时确定对象类型的方法。
贴段code比较容易理解。
#include <typeinfo.h>
#include <iostream.h>
#include <string.h>
void main()
{
int a = 4;
cout << typeid(a).name() << endl;
cout << typeid(4).name() << endl;
cout << typeid(5.5f).name() << endl;
cout << typeid(5.5).name() << endl;
cout << typeid('c').name() << endl;
}
输出结果如下:
注意:在编译时要打开对RTTI的支持。
VC6.0 的配置画面如下:
RTTI 是Runtime Type Information的缩写,它提供了运行时确定对象类型的方法。
贴段code比较容易理解。
#include <typeinfo.h>
#include <iostream.h>
#include <string.h>
void main()
{
int a = 4;
cout << typeid(a).name() << endl;
cout << typeid(4).name() << endl;
cout << typeid(5.5f).name() << endl;
cout << typeid(5.5).name() << endl;
cout << typeid('c').name() << endl;
}
输出结果如下:
注意:在编译时要打开对RTTI的支持。
VC6.0 的配置画面如下:
相关文章推荐
- 程序猿语文水平挑战卷
- 程序猿语文水平挑战卷
- c/c++中运行外部程序
- c++类继承
- 加一(LintCode)
- 二进制求和(LintCode)
- 解决std::addressof找不到及eclipse lunna+cdt 8.6.0 支持 c++11的设置
- Mandelbrot Set & Julia Set -- 美丽分形 (C++, MFC + BCG + CxImage 实现)
- C++学习笔记---面向对象编程
- C++中内存泄露检测
- 《C++ primer》英文第五版阅读笔记(三)——变量
- C++应用程序的编译过程
- 华为C++笔试题
- C++学习笔记---容器和算法
- C++学习笔记---基本内置类型
- C++学习笔记--GCC编译过程
- C/C++ 面试题---测试一下你的内功
- C++折半插入排序
- C++内存泄露检测
- C++学习笔记:如何学习C++?