当前头文件是语言支持库(Language support library)中的 类型支持 主题中的部分内容。

语言支持库(参考手册) ​语言支持库(标准)

  • type_info 包含某个类型的由编译器指定(Implementation-specific)的信息,这是一个类,它的对象通常由 typeid 操作符返回
    bad_typeid 如果 typeid 表达式中的某个参数是无效(Null)的,将会抛出的异常
    bad_cast 无效的 dynamic_cast 表达式抛出的异常
  • namespace std {
        class type_info;
        class bad_cast;
        class bad_typeid;
    }
  • class type_info {
    public:
        virtual ~type_info();
        bool operator==(const type_info& rhs) const noexcept;
        bool operator!=(const type_info& rhs) const noexcept;
        bool before(const type_info& rhs) const noexcept;
        size_t hash_code() const noexcept;
        const char* name() const noexcept;
        type_info(const type_info& rhs) = delete;
        // cannot be copied
        type_info& operator=(const type_info& rhs) = delete; // cannot be copied
    };
  • class bad_cast : public exception {
    public:
        bad_cast() noexcept;
        bad_cast(const bad_cast&) noexcept;
        bad_cast& operator=(const bad_cast&) noexcept;
        virtual const char* what() const noexcept;
    };
  • class bad_typeid : public exception {
    public:
        bad_typeid() noexcept;
        bad_typeid(const bad_typeid&) noexcept;
        bad_typeid& operator=(const bad_typeid&) noexcept;
        virtual const char* what() const noexcept;
    };