一种 RTTI 的实现

RTTI (Run-Time Type Infomation), 就是用来知道,运行时一个对象真实的类型,其中一种实现如下。

  // Own implementation of rtti-subset to avoid depending on rtti and its costs.
  template<typename T>
  static OptionIdentifier identifier() {
    static char id_placeholder;
    return &id_placeholder;
  }
(摘抄自 webrtc 工程)

特点:

1. 依赖于运行时,静态变量只有单一实例,可以得到相同地址;

2. 使用一个无意义的占位符来完成占位地址的功能;


其实 RTTI 的实现有很多种,这种方式虽不得调试,但性能尚佳,不失为一种方法,也可以把占位符换成更得调试的字符串信息来表征类信息。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值