2011年3月14日

摘要: RTTI(运行时类型识别)允许“用指向基类的指针或引用来操纵对象”的程序能够获取到“这些指针或引用所指对象“的实际派生类型。在c++中,为了支持RTTI,提供了两个操作符:1、dynamic_cast操作符,它允许在运行时刻进行类型转换,从而使程序能够在一个类层次结构中安全地转换类型,把基类指针转换成派生类指针,或把指向基类的左值转换成派生类的引用,当然只有在保证转换能够成功的情况下才可以。2、typeid操作符,它指出指针或引用指向的对象的实际派生类型。但是,对于要获得的派生类类型的信息,dynamic_cast和typeid操作符的操作数的类型必须是带有一个或多个虚拟函数的类类型。即,对于 阅读全文
posted @ 2011-03-14 17:55 Zhiqiang.Chen 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 一、C风格(C-style)强制类型转换(T) expression // cast expression to be of type T二、C++的几种类型转换符号1. static_cast用法:static_cast <type-id> ( expression )Remarks:No run-time type check is made to help ensure the safety of the conversion.该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有以下几种用法:class A{public: 阅读全文
posted @ 2011-03-14 17:42 Zhiqiang.Chen 阅读(173) 评论(0) 推荐(0) 编辑

导航