zoukankan      html  css  js  c++  java
  • typeid操作符

    typeid操作符:它指出指针或引用指向的对象的实际派生类型。

    例如:

    employee* pe=new manager;
    typeid(*pe)==typeid(manager) //true

      typeid可以用于作用于各种类型名,对象和内置基本数据类型的实例、指针或者引用,当作用于指针和引用将返回它实际指向对象的类型信息,甚至可用于函数名,真是太强大了。typeid的返回是type_info类型。

      type_info类:这个类的确切定义是与编译器实现相关的,下面是MSDN中给出的定义

    class type_info {
    public:
      virtual ~type_info();
      int operator==(const type_info& rhs) const;
      int operator!=(const type_info& rhs) const;
      int before(const type_info& rhs) const;
      const char* name() const;
      const char* raw_name() const;
    private:
      ...
    };

    可以用
    cout << "int id: " << typeid(int).name() << endl;
    cout << "int raw id: " << typeid(int).raw_name() << endl;
    cout << "main id: " << typeid(main).name() << endl;
    cout << "main raw id: " << typeid(main).raw_name() << endl;
    看看有什么输出
  • 相关阅读:
    spring jdk动态代理
    java分页对象封装
    jQuery---ajxa
    创建ajax对象
    EL基础语法
    jsp语法
    servlet cookie session
    java 单例模式
    yapi 强大的api管理系统
    Orange--一个基于OpenResty / Nginx的HTTP API Gateway
  • 原文地址:https://www.cnblogs.com/youyou/p/279992.html
Copyright © 2011-2022 走看看