转载一位CSDN网友 zhukeke(zhukeke)对 type-safe 的解释
类型安全就是要求类的指针“确实”指向类的一个对象。要做到这一点,无非就是在使用指针之前,多做一些验证工作。为实现这一点,需要:
(1)对每一个需要类型安全的类,提供“运行时类信息”(RTTI)。
所谓RTTI,就是一块静态数据,它包含类的名字,版本号等信息。每一个支持类型安全的类都与唯一一个RTTI一一对应。
(2)提供一个虚函数访问该RTTI。
这样当我们有一个该类的指针的时候,如果该指针“确实”是指向我们所规定的类的对象,就可能通过该指针访问RTTI以验证类的“名字”、“版本号”等信息了。反之,如果该指针不指向一个实际的对象,我们就不可能得到正确的信息。
(3)在任何实际使用指针之前,都必须进行上述的验证。
(4)事实上,VC的CObject类(及其派生类)就是典型的类型安全的类。
阅读(600) | 评论(0) | 转发(0) |