RTTI(執行時期型別辨識)

ayiayi6386 2003-12-12 05:09:46
我在看《深入浅出MFC》但有些词语实在难理解请你帮帮我!
RTTI(執行時期型別辨識)到底是啥!请说得详细些谢谢!
...全文
12 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wangyangcheng 2003-12-30
//RTTI是否可與polymorphics機制搭配使用?

#include <iostream>
#include <typeinfo>
using namespace std;
class Base
{
public:
Base( int x ):_x( x )
{
}
virtual const char* what_am_i() const
{
return typeid(*this).name();
}
protected:
int _x;
};

class Derived:public Base
{
public:
Derived( int x ):Base( x )
{
}
virtual const char* what_am_i() const
{
return typeid(*this).name();
}

};

int main()
{
Base _base(0);
Derived _derived(1);
Base *_pBase = &_derived;
if ( typeid( *_pBase ) == typeid( Derived ) )
cout << _base.what_am_i() << endl;
return 0;
}
  • 打赏
  • 举报
回复
smalltalk 2003-12-13
RTTI就是能够使得c++的运算付dynamic_cast<type>能够正常工作的技术。无它。
  • 打赏
  • 举报
回复
cpsoft 2003-12-12
RTTI是否被98年C++定义为标准功能?我知道VC6不是标准C++,那么VC7中是否实现了这个功能??
是什么关键字!
  • 打赏
  • 举报
回复
muzili 2003-12-12
简单认为就是判断一个未知的类对象指针究竟是什么类对象的指针
  • 打赏
  • 举报
回复
chenmujian81 2003-12-12
运行时识别---对象的类型。
  • 打赏
  • 举报
回复
zhukeke 2003-12-12
RTTI是一块静态数据,它记录了类的名字,版本号等信息。仅此而已。
  • 打赏
  • 举报
回复
发帖
C++ 语言
加入

6.2w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
申请成为版主
帖子事件
创建了帖子
2003-12-12 05:09
社区公告
暂无公告