促进 C++库

……其中一个世界。 赫伯·萨特安德烈亚历山德雷斯库,C++编码标准

这是旧版本Boost的文档。单击此处查看此页面的最新版本。
上一个向上主页下一步

第四十一章助推。类型索引4.1

根据Boost软件许可证1.0版进行分发。(见随附文件文件LICENSE_1_0.txt或复制到http://www.boost.org/LICENSE_1_0.txt)

目录

动机
入门
如何使用
例子使用Boost。任何
例子使用Boost。变体
配置和构建库
它是如何工作的
示例
得到人类可读和损坏的类型名称
储存关于容器中类型的信息
得到通过继承来接收实型名称
使用RTTI不可用或不受欢迎的runtime_cast
完全正确类型匹配:使用const、volatile和引用限定符存储类型
带有或不带有RTTI的raw_name()和pretty_name(
C++14:编译时检查命名空间
C++14:检查所提供类型的词汇顺序
促进。TypeIndex标头引用
标题<boost/type_index.hpp>
标题<boost/type_index/ctti_type_iindex.hpp>
标题<boost/type_index/runtime_cast.hpp>
标题<boost/type_index/runtime_cast/boost_shared_ptr_cast.hpp>
标题<boost/type_index/runtime_cast/pointer_cast.hpp>
标题<boost/type_index/runtime_cast/reference_cast.hpp>
标题<boost/type_index/runtime_cast/register_runtime_class.hpp>
标题<boost/type_index/runtime_cast/std_shared_ptr_cast.hpp>
标题<boost/type_index/stl_type_inderex.hpp>
标题<boost/type_index/type_eindex_facade.hpp>
定制类型_索引
基础
得到在运行时键入infos
使用代码周围的新类型信息
空间和性能
代码膨胀
RTTI仿真限制
定义BOOST_TYPE_INDEX_FUNCTION_SIGNATURE宏
正在修复pretty_name()输出
混合RTTI打开和RTTI关闭的源
致谢

有时需要在运行时获取和存储有关类型的信息。在这种情况下&类型ID(T型)或C++11类标准时间:类型_索引通常使用,这是问题开始的地方:

  • 类型ID(T型)标准时间:类型索引需要运行时类型信息(RTTI)
  • 的一些实现类型ID(T型)错误地不从类型中剥离const、volatile和引用
  • 一些编译器有错误,无法正确比较标准时间:键入信息共享库中的对象
  • 目前只有少数标准库实现提供标准时间:类型_索引
  • 在不剥离const、volatile和引用的情况下,无法轻松存储类型信息
  • 没有好的、可移植的方法来获取可读的类型名称
  • 无法轻松创建自己的类型信息类

促进。TypeIndex库旨在解决所有这些问题。

[注] 注释

T型表示此处键入。思考截至T型在里面模板 < T型>

上次修订时间:2017年4月17日02:30:57 GMT


上一个向上主页下一步