青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
wifecooky
學一點,記一點
C++博客
首頁
新隨筆
聯系
聚合
管理
隨筆-22 評論-7 文章-0 trackbacks-0
關于運行時類型識別typeid
在程序中,當我們對多態類的基類指針使用typeid,就可以在運行時確定指針指向對象的實際類型,并輸出對象類型的名字。
#include
<
cstdlib
>
#include
<
iostream
>
#include
<
typeinfo
>
using
namespace
std;
class
B
{
public
:
virtual
void
fun()
{}
}
;
class
D:
public
B
{
public
:
void
fun()
{}
}
;
int
main()
{
B
*
p;
D ob;
p
=&
ob;
cout
<<
"
typeid(*p).name()=
"
<<
typeid(
*
p).name()
<<
endl;
if
(typeid(
*
p)
==
typeid(D))
cout
<<
"
typeid(*p)==typeid(D)
"
<<
endl;
cout
<<
"
typeid(p).name()=
"
<<
typeid(p).name()
<<
endl;
if
(typeid(p)
==
typeid(B
*
))
cout
<<
"
typeid(p)==typeid(B*)
"
<<
endl;
system(
"
pause
"
);
return
0
;
}
這段code在VC++6.0中編譯時,提示如下
warning C4541: 'typeid' used on polymorphic type 'class B' with /GR-; unpredictable behavior may result
編譯后運行時錯誤。不知是不是此版本的VC++不符合C++標準?
在Devcpp(g++)中編譯運行得到的結果是
typeid(*p).name()=1D
typeid(*p)==typeid(D)
typeid(p).name()=P1B
typeid(p)==typeid(B*)
說明用typeid作用于*p得到的的確是D類型,而用typeid作用于p得到的依然是B類的指針類型
如果typeid被作用于非多態類指針,那么我們得到的是指針被聲明的類型,也就是說,此時typeid并不會返回指針所指向對象的實際類型。
如果將class B中的virtual去掉,在編譯運行得到的結果是
typeid(*p).name()=1B
typeid(p).name()=P1B
typeid(p)==typeid(B*)
由此可見,在任何時刻都可以用基類指針指向派生類對象,而用typeid(*p)確定p指向的對象時,只當基類為多態類時才能真正確定p在運行時指向的實際類型。
VC默認不啟動RTTI,即“運行時期類型識別”,如果在你的程序用到了RTTI,比如typeid,你必須明確告訴編譯器啟動RTTI,這樣VC才能正確編譯
選擇菜單Project->settings->c/c++->category->c++ language,將Enable Run-Time Type Infomation(RTTI)選中
posted on 2010-11-08 09:23
楚天清秋
閱讀(727)
評論(0)
編輯
收藏
引用
所屬分類:
C,C++
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
關于運行時類型識別typeid
cout重定向到文件 (轉)
判斷兩個數組中是否存在相同的數字
浮點數在計算機中存儲方式
關于sizeof(類)的大小
c++虛函數表探究
什么是智能指針(Solmyr 的小品文系列之五:垃圾收集)
template必須定義于頭文件中[轉]
如何判斷文件是否存在?
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
<
2010年11月
>
日
一
二
三
四
五
六
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
給我留言
查看公開留言
查看私人留言
隨筆分類
C,C++(9)
C++ Builder(2)
Java
Open Source(1)
VC++(2)
電腦故障(1)
生活拾趣(2)
算法(2)
重拾英語(1)
隨筆檔案
2010年11月 (1)
2010年9月 (2)
2010年8月 (1)
2010年7月 (4)
2010年6月 (7)
2010年5月 (3)
2010年4月 (4)
搜索
最新評論
1.?re: BCB的RadioGroup控件的ItemIndex屬性BUG!
用showmod.. 顯示模式對話框看看。
要是還不行,就用hide,不用close。
似乎也見過。
--人渣
2.?re: 關于sizeof(類)的大小
還是沒明白。。。。
--楚天清秋
3.?re: 關于sizeof(類)的大小
@heart168
同上
--Sunshine Alike
4.?re: 關于sizeof(類)的大小
@楚天清秋
sorry sorry, 當時沒細想就寫了.
這個應該是內存對齊的原因吧,虛指針是只有一個,4字節.
情況2可能是因為多級繼承會有額外字節記錄this指針的偏移吧.
--Sunshine Alike
5.?re: 關于sizeof(類)的大小
能否解釋一下哪兩個虛指針呢?
--heart168
閱讀排行榜
1.?帶非法字符的文件夾和文件的刪除方法!(轉)(3599)
2.?cout重定向到文件 (轉)(1823)
3.?BCB的RadioGroup控件的ItemIndex屬性BUG!(1746)
4.?判斷兩個數組中是否存在相同的數字(963)
5.?蘋果引發的故事^_^(蘋果習語的由來)(875)
評論排行榜
1.?關于sizeof(類)的大小(6)
2.?BCB的RadioGroup控件的ItemIndex屬性BUG!(1)
3.?常見開源協議(轉) (0)
4.?求24點 (0)
5.?關于運行時類型識別typeid (0)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 楚天清秋
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
欧美激情日韩
|
久久亚洲一区
|
欧美一区二区三区在
|
免费在线欧美视频
|
午夜精品久久久久久久99热浪潮
|
欧美日韩精品综合
|
亚洲免费不卡
|
亚洲精品麻豆
|
美女诱惑一区
|
亚洲成色777777在线观看影院
|
久久精彩免费视频
|
亚洲欧美在线一区二区
|
国产精品伦理
|
欧美一区视频
|
香蕉久久一区二区不卡无毒影院
|
国产精品爽爽ⅴa在线观看
|
亚洲在线一区二区三区
|
亚洲一区二区黄
|
国产女人aaa级久久久级
|
欧美一区二区三区男人的天堂
|
亚洲尤物在线视频观看
|
欧美午夜免费电影
|
午夜在线视频观看日韩17c
|
亚洲一区在线免费
|
国产色综合网
|
嫩模写真一区二区三区三州
|
蜜臀99久久精品久久久久久软件
|
亚洲日本中文字幕免费在线不卡
|
欧美va亚洲va香蕉在线
|
久久亚洲一区
|
欧美国产日韩一区二区
|
亚洲色图在线视频
|
亚洲欧美日韩另类精品一区二区三区
|
久久久久五月天
|
久久伊人亚洲
|
9色国产精品
|
亚洲综合视频一区
|
在线成人黄色
|
亚洲精品影院在线观看
|
国产精品日韩一区二区三区
|
久久亚洲影院
|
欧美日韩国产小视频
|
亚洲免费中文字幕
|
久久久99国产精品免费
|
日韩网站在线
|
欧美影院午夜播放
|
99视频日韩
|
亚洲欧美日韩一区二区三区在线
|
一区二区三区精品视频在线观看
|
av成人免费在线
|
国产视频自拍一区
|
亚洲日本va在线观看
|
国产精品区二区三区日本
|
免费观看在线综合色
|
欧美四级在线
|
欧美激情亚洲一区
|
国产欧美日韩激情
|
最新热久久免费视频
|
国产亚洲第一区
|
亚洲精品国产精品乱码不99
|
国产午夜精品全部视频在线播放
|
999亚洲国产精
|
久久深夜福利
|
国产精品久久久久三级
|
亚洲成色777777女色窝
|
国产午夜精品福利
|
亚洲视频碰碰
|
一区二区三区av
|
免费人成网站在线观看欧美高清
|
久久综合久久综合久久
|
欧美视频精品一区
|
最近中文字幕mv在线一区二区三区四区
|
日韩一级大片在线
|
久久黄金**
|
亚洲欧美日韩天堂
|
欧美人成网站
|
欧美激情国产精品
|
伊人男人综合视频网
|
午夜精品成人在线
|
亚洲制服丝袜在线
|
欧美日韩在线三区
|
亚洲国产欧美在线人成
|
亚洲二区视频在线
|
久久久精品日韩
|
久久久久久久综合狠狠综合
|
国产精品免费观看视频
|
一区二区三区高清在线观看
|
一本色道久久综合亚洲91
|
欧美精品激情在线观看
|
91久久久国产精品
|
亚洲免费av片
|
欧美日韩精品欧美日韩精品一
|
亚洲综合999
|
亚洲天堂av在线免费观看
|
欧美日韩精品国产
|
一区二区三区免费看
|
亚洲欧美日韩在线综合
|
欧美人成免费网站
|
亚洲深夜福利网站
|
久久精品日韩
|
亚洲国产精品久久久久
|
欧美国产亚洲精品久久久8v
|
亚洲精品国产欧美
|
亚洲专区一区
|
国产视频综合在线
|
久久久久九九视频
|
亚洲精品偷拍
|
欧美日韩小视频
|
亚洲在线一区二区三区
|
欧美色欧美亚洲高清在线视频
|
99精品国产在热久久下载
|
亚洲专区免费
|
国产一区二区三区四区五区美女
|
好男人免费精品视频
|
小黄鸭精品aⅴ导航网站入口
|
久久久久久九九九九
|
亚洲黄一区二区
|
欧美日韩亚洲高清
|
欧美一区91
|
亚洲国产精品va在看黑人
|
亚洲一区二区三区涩
|
国产精品综合色区在线观看
|
久久精品日产第一区二区
|
亚洲国产日韩一级
|
亚洲伊人第一页
|
红桃视频亚洲
|
欧美日韩亚洲成人
|
久久久99爱
|
一本综合精品
|
欧美 日韩 国产 一区
|
亚洲性视频h
|
91久久久久久久久久久久久
|
欧美少妇一区
|
久久综合九色99
|
亚洲一区国产一区
|
欧美黄免费看
|
久久精品在线播放
|
亚洲视频一区
|
亚洲国产影院
|
国产自产女人91一区在线观看
|
欧美日韩国产另类不卡
|
久久天天狠狠
|
香蕉成人久久
|
日韩亚洲欧美一区
|
欧美高清在线视频观看不卡
|
午夜免费久久久久
|
在线亚洲精品
|
91久久极品少妇xxxxⅹ软件
|
国产欧美另类
|
欧美三级在线播放
|
欧美黑人在线观看
|
免费成人av在线看
|
久久精品二区
|
亚洲一区二区动漫
|
日韩午夜视频在线观看
|
欧美激情精品久久久久久大尺度
|
久久精品一区二区三区不卡
|
亚洲制服欧美中文字幕中文字幕
|
日韩天堂av
|
91久久国产自产拍夜夜嗨
|
伊人色综合久久天天
|
国产日韩欧美在线
|
国产精品午夜久久
|
国产精品www.
|
欧美性片在线观看
|
欧美色视频日本高清在线观看
|
欧美国产精品va在线观看
|
久久久99免费视频
|
欧美在线一二三四区
|
午夜国产一区
|
欧美在线亚洲综合一区
|
欧美一级久久
|
欧美在线中文字幕
|
久久成人综合网
|
久久久精品性
|
久久久久一本一区二区青青蜜月
|
欧美在线观看日本一区
|
欧美在线亚洲在线
|
久久久久久久综合狠狠综合
|
久久国产免费看
|
久久网站免费
|
精品成人乱色一区二区
|
日韩一级精品视频在线观看
|
亚洲国产毛片完整版
|
国产一区二区日韩精品
|
国产乱子伦一区二区三区国色天香
|
欧美国产高潮xxxx1819
|
欧美精品久久久久久
|
欧美日韩黄视频
|
国产精品理论片在线观看
|
国产女人水真多18毛片18精品视频
|
国产免费一区二区三区香蕉精
|
国产视频综合在线
|
在线成人av.com
|
亚洲看片网站
|
欧美亚洲视频在线观看
|
欧美综合77777色婷婷
|
美女脱光内衣内裤视频久久影院
|
欧美成人r级一区二区三区
|
亚洲精品1234
|