Standard library header <typeindex> (C++11)
From cppreference.com
This header is part of the type support library.
Includes | ||
(C++20) | Three-way comparison operator support | |
Classes | ||
(C++11) | wrapper around a type_info object, that can be used as index in associative and unordered associative containers (class) | |
(C++11) | hash support for std::type_index (class template specialization) | |
Forward declarations | ||
Defined in header <functional> | ||
(C++11) | hash function object (class template) |
[edit]Synopsis
#include <compare> namespace std {class type_index;template<class T>struct hash;template<>struct hash<type_index>;}
[edit]Class std::type_index
namespace std {class type_index {public: type_index(const type_info& rhs)noexcept;bool operator==(const type_index& rhs)constnoexcept;bool operator<(const type_index& rhs)constnoexcept;bool operator>(const type_index& rhs)constnoexcept;bool operator<=(const type_index& rhs)constnoexcept;bool operator>=(const type_index& rhs)constnoexcept; strong_ordering operator<=>(const type_index& rhs)constnoexcept; size_t hash_code()constnoexcept;constchar* name()constnoexcept; private:const type_info* target;// exposition only// Note that the use of a pointer here, rather than a reference,// means that the default copy/move constructor and assignment// operators will be provided and work as expected.};}