Пространства имён
Варианты
Действия

Заголовочный файл стандартной библиотеки <typeindex>

Материал из cppreference.com
< cpp‎ | header
 
 
 

Этот заголовочный файл часть библиотеки поддержки типов.

Содержание

[править] Классы

Обёртка для объекта типа type_info, которая позволяет использовать объекты этого типа в качестве индекса в ассоциативных и неупорядоченных ассоциативных контейнерах
(класс) [править]
Поддерживает хеширование для std::type_index
(специализация шаблона класса) [править]
Опережающее определение
Заголовочный файл <functional>
(C++11)
Объект хеш-функции
(шаблон класса) [править]

[править] Определение

namespace std {
    class type_index;
    template <class T> struct hash;
    template<> struct hash<type_index>;
}

[править] Класс std::type_index

class type_index {
public:
    type_index(const type_info& rhs) noexcept;
    bool operator==(const type_index& rhs) const noexcept;
    bool operator!=(const type_index& rhs) const noexcept;
    bool operator< (const type_index& rhs) const noexcept;
    bool operator<= (const type_index& rhs) const noexcept;
    bool operator> (const type_index& rhs) const noexcept;
    bool operator>= (const type_index& rhs) const noexcept;
    size_t hash_code() const;
    const char* name() const;
private:
    const type_info* target; 
    // Обратите внимание, что здесь используется указатель, а не ссылка,
    // что означает, что предоставлен и работает как ожидается конструктор 
    // копирование/перемещения по умолчанию, а также оператор присваивания.
};