Boost C++ Libraries Home Libraries People FAQ More

Next

Chapter 1. Boost.TypeIndex 1.0

Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Table of Contents

Motivation
Getting started
Examples
Boost.TypeIndex Header Reference
Header <boost/type_index.hpp>
Performance
Compiler support

Sometimes getting and storing information about a template type at runtime is required. For such cases a construction like &typeid(T) or C++11 class std::type_index is usually used. And that is the point, where problems start:

  • typeid(T) and std::type_index require Run Time Type Info (RTTI)
  • some implementations of typeid(T) strip const, volatile and references from type, while others don't
  • some compilers have bugs and do not correctly compare std::type_info objects across shared libraries
  • only a few implementations already provide std::type_index
  • no easy way to store type info without stripping const, volatile and references
  • no nice and portable way to get human readable type names

Boost.TypeIndex was designed to work around those issues.



[Note] Note

T means type here. Think of it as of T in template <class T>

[Warning] Warning

This library is not accepted to Boost, it is currrently waiting for review.

Last revised: March 04, 2013 at 20:02:24 GMT


Next