• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-4  評論-40  文章-117  trackbacks-0


            使用關(guān)鍵字 typeid 可以返回  變量/類型  的 類型信息: std::type_info ,該類的定義如下:(經(jīng)簡化)

            class type_info {
            public:
                virtual ~type_info();
                bool operator==(const type_info& rhs) const;
                bool operator!=(const type_info& rhs) const;
                const char* name(__type_info_node* __ptype_info_node = &__type_info_root_node) const;
                const char* raw_name() const;
            private:
                void *_m_data;
                char _m_d_name[1];
                type_info(const type_info& rhs);
                type_info& operator=(const type_info& rhs);
            };

             == 運算符可以比較兩個 對象是否是同一個類型。
            name()函數(shù)輸出該類型的名字。


            測試如下:

            class CBase
            {
            public:
             CBase()
             {
             }

             virtual ~CBase()
             {
             }
            };

            class CDerive : public CBase
            {
            public:
             CDerive(){}
            };


            int _tmain(int argc, _TCHAR* argv[])
            {
             CBase base;
             CDerive derive;

             CBase*  p  = &base;
             CBase*   pB = &derive;
             CDerive* pD = &derive;

             cout<<"typeid(CBase) : "<<typeid(CBase).name()<<endl;
             cout<<"typeid(CDerive) : "<<typeid(CDerive).name()<<endl<<endl;

             cout<<"typeid(base) : "<<typeid(base).name()<<endl;
             cout<<"typeid(derive) : "<<typeid(derive).name()<<endl<<endl;

             cout<<"typeid(p) : "<<typeid(p).name()<<endl;
             cout<<"typeid(pB) : "<<typeid(pB).name()<<endl;
             cout<<"typeid(pD) : "<<typeid(pD).name()<<endl<<endl;

             cout<<"typeid(*p) : "<<typeid(*p).name()<<endl;
             cout<<"typeid(*pB) : "<<typeid(*pB).name()<<endl;
             cout<<"typeid(*pD) : "<<typeid(*pD).name()<<endl<<endl;


             cout<<endl;


             cout<<"typeid(int) : "<<typeid(int).name()<<endl;
             cout<<"typeid(float) : "<<typeid(float).name()<<endl;
             cout<<"typeid(bool) : "<<typeid(bool).name()<<endl;
             cout<<"typeid(double) : "<<typeid(double).name()<<endl;
             cout<<"typeid(std::string) : "<<typeid(std::string).name()<<endl;

             getchar();

             return 0;
            }

            運行結(jié)果:










            posted on 2009-06-01 16:13 李陽 閱讀(383) 評論(0)  編輯 收藏 引用
            99久久精品国产毛片| 伊人久久大香线蕉av不变影院| 99精品久久久久久久婷婷| 国产精品乱码久久久久久软件| 亚洲国产精品久久电影欧美| 一本色道久久综合狠狠躁| 久久99精品国产麻豆| 91麻豆精品国产91久久久久久| 久久九色综合九色99伊人| 香蕉久久av一区二区三区| 日本精品久久久久中文字幕| 四虎影视久久久免费| 精品国产一区二区三区久久久狼| 久久91精品国产91久久麻豆| 日韩欧美亚洲综合久久影院Ds| 亚洲综合熟女久久久30p| 99久久婷婷国产一区二区| 久久无码AV一区二区三区| 欧美亚洲国产精品久久蜜芽| 欧美亚洲国产精品久久久久| 久久最新精品国产| 久久人爽人人爽人人片AV| 久久影院午夜理论片无码 | 国产一区二区久久久| 国产成人久久精品区一区二区| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 少妇久久久久久久久久| 久久亚洲精品无码观看不卡| 99精品国产在热久久无毒不卡| 一个色综合久久| 日韩AV毛片精品久久久| 久久精品一区二区三区中文字幕| 69久久夜色精品国产69| 久久精品夜夜夜夜夜久久| 亚洲精品无码久久千人斩| 18禁黄久久久AAA片| 热久久视久久精品18| 久久亚洲AV成人无码软件| 中文精品99久久国产| 日韩AV毛片精品久久久| 亚洲成av人片不卡无码久久|