青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
wifecooky
學(xué)一點(diǎn),記一點(diǎn)
C++博客
首頁
新隨筆
聯(lián)系
聚合
管理
隨筆-22 評論-7 文章-0 trackbacks-0
關(guān)于運(yùn)行時類型識別typeid
在程序中,當(dāng)我們對多態(tài)類的基類指針使用typeid,就可以在運(yùn)行時確定指針指向?qū)ο蟮膶?shí)際類型,并輸出對象類型的名字。
#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
編譯后運(yùn)行時錯誤。不知是不是此版本的VC++不符合C++標(biāo)準(zhǔn)?
在Devcpp(g++)中編譯運(yùn)行得到的結(jié)果是
typeid(*p).name()=1D
typeid(*p)==typeid(D)
typeid(p).name()=P1B
typeid(p)==typeid(B*)
說明用typeid作用于*p得到的的確是D類型,而用typeid作用于p得到的依然是B類的指針類型
如果typeid被作用于非多態(tài)類指針,那么我們得到的是指針被聲明的類型,也就是說,此時typeid并不會返回指針?biāo)赶驅(qū)ο蟮膶?shí)際類型。
如果將class B中的virtual去掉,在編譯運(yùn)行得到的結(jié)果是
typeid(*p).name()=1B
typeid(p).name()=P1B
typeid(p)==typeid(B*)
由此可見,在任何時刻都可以用基類指針指向派生類對象,而用typeid(*p)確定p指向的對象時,只當(dāng)基類為多態(tài)類時才能真正確定p在運(yùn)行時指向的實(shí)際類型。
VC默認(rèn)不啟動RTTI,即“運(yùn)行時期類型識別”,如果在你的程序用到了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++
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
關(guān)于運(yùn)行時類型識別typeid
cout重定向到文件 (轉(zhuǎn))
判斷兩個數(shù)組中是否存在相同的數(shù)字
浮點(diǎn)數(shù)在計算機(jī)中存儲方式
關(guān)于sizeof(類)的大小
c++虛函數(shù)表探究
什么是智能指針(Solmyr 的小品文系列之五:垃圾收集)
template必須定義于頭文件中[轉(zhuǎn)]
如何判斷文件是否存在?
網(wǎng)站導(dǎo)航:
博客園
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: 關(guān)于sizeof(類)的大小
還是沒明白。。。。
--楚天清秋
3.?re: 關(guān)于sizeof(類)的大小
@heart168
同上
--Sunshine Alike
4.?re: 關(guān)于sizeof(類)的大小
@楚天清秋
sorry sorry, 當(dāng)時沒細(xì)想就寫了.
這個應(yīng)該是內(nèi)存對齊的原因吧,虛指針是只有一個,4字節(jié).
情況2可能是因為多級繼承會有額外字節(jié)記錄this指針的偏移吧.
--Sunshine Alike
5.?re: 關(guān)于sizeof(類)的大小
能否解釋一下哪兩個虛指針呢?
--heart168
閱讀排行榜
1.?帶非法字符的文件夾和文件的刪除方法!(轉(zhuǎn))(3599)
2.?cout重定向到文件 (轉(zhuǎn))(1823)
3.?BCB的RadioGroup控件的ItemIndex屬性BUG!(1746)
4.?判斷兩個數(shù)組中是否存在相同的數(shù)字(963)
5.?蘋果引發(fā)的故事^_^(蘋果習(xí)語的由來)(875)
評論排行榜
1.?關(guān)于sizeof(類)的大小(6)
2.?BCB的RadioGroup控件的ItemIndex屬性BUG!(1)
3.?常見開源協(xié)議(轉(zhuǎn)) (0)
4.?求24點(diǎn) (0)
5.?關(guān)于運(yùn)行時類型識別typeid (0)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 楚天清秋
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
欧美日韩一区二区三区免费
|
一区二区日本视频
|
99亚洲一区二区
|
久久精品99无色码中文字幕
|
国产精品亚洲片夜色在线
|
亚洲第一精品久久忘忧草社区
|
麻豆精品视频
|
欧美.com
|
一本色道久久综合
|
国产精品九色蝌蚪自拍
|
久久国产精品99国产精
|
另类欧美日韩国产在线
|
亚洲一区二区三
|
亚洲午夜精品17c
|
日韩午夜激情av
|
亚洲精品久久久久久下一站
|
亚洲欧洲日产国产综合网
|
亚洲国产精品久久久久秋霞不卡
|
在线成人av网站
|
亚洲激情六月丁香
|
中国亚洲黄色
|
欧美一区91
|
久久人人爽人人
|
亚洲国产精品久久久久婷婷老年
|
一区二区三区色
|
亚洲理伦在线
|
一区二区三区精品视频
|
亚洲激情图片小说视频
|
亚洲精品免费看
|
一本色道久久综合亚洲精品小说
|
亚洲国语精品自产拍在线观看
|
欧美国产精品人人做人人爱
|
久久精品人人做人人综合
|
国产精品亚洲综合
|
亚洲国产精品一区二区www在线
|
aa成人免费视频
|
亚洲国内欧美
|
亚洲免费观看高清在线观看
|
在线成人激情
|
一本到12不卡视频在线dvd
|
欧美在线免费观看
|
久久经典综合
|
亚洲国产综合在线看不卡
|
免费在线成人av
|
欧美在线亚洲
|
欧美大尺度在线
|
国产精品美女午夜av
|
国产欧美午夜
|
欧美一区二区三区四区在线观看
|
亚洲国产美女久久久久
|
一区二区三区精密机械公司
|
亚洲一区二区免费在线
|
六十路精品视频
|
夜色激情一区二区
|
欧美成人精品在线
|
99精品视频免费
|
亚洲综合欧美日韩
|
国产精品v片在线观看不卡
|
亚洲午夜精品一区二区三区他趣
|
亚洲二区在线视频
|
夜夜嗨av一区二区三区
|
亚洲视频一区二区
|
日韩小视频在线观看专区
|
欧美成人精品福利
|
亚洲男人第一av网站
|
欧美精品二区三区四区免费看视频
|
亚洲图片欧美午夜
|
久久综合九色综合欧美就去吻
|
亚洲高清不卡av
|
久久夜色撩人精品
|
久久久久久久久一区二区
|
亚洲视频999
|
久久久国产午夜精品
|
亚洲欧洲日本mm
|
裸体歌舞表演一区二区
|
欧美一级视频精品观看
|
亚洲在线一区二区
|
欧美午夜精品久久久久久人妖
|
一区二区三区欧美亚洲
|
狠狠88综合久久久久综合网
|
欧美一区激情视频在线观看
|
黄色在线成人
|
久久久国产午夜精品
|
亚洲一区在线播放
|
欧美久久久久久蜜桃
|
性久久久久久久久久久久
|
欧美成人精品不卡视频在线观看
|
米奇777在线欧美播放
|
午夜精品久久久久久久99黑人
|
另类人畜视频在线
|
免费欧美日韩国产三级电影
|
国产精品yjizz
|
日韩视频免费观看高清完整版
|
亚洲国产成人在线播放
|
乱中年女人伦av一区二区
|
久久在线播放
|
欧美日韩另类国产亚洲欧美一级
|
亚洲国产欧美一区二区三区同亚洲
|
久久精品视频在线免费观看
|
亚洲一区二区三区777
|
欧美视频中文字幕在线
|
欧美激情精品久久久久
|
亚洲国产精品尤物yw在线观看
|
美女视频黄 久久
|
91久久精品国产91性色tv
|
国产精品99久久久久久久久
|
欧美激情aⅴ一区二区三区
|
久久嫩草精品久久久久
|
欧美一区二视频在线免费观看
|
91久久久精品
|
欧美色区777第一页
|
欧美精品国产一区
|
欧美在线视频网站
|
欧美成人69av
|
欧美精品激情在线观看
|
麻豆91精品
|
欧美+日本+国产+在线a∨观看
|
国产精品免费福利
|
欧美激情一区二区三区成人
|
亚洲欧美日韩一区
|
亚洲免费大片
|
亚洲美女淫视频
|
欧美好骚综合网
|
久久在线观看视频
|
久久福利资源站
|
日韩视频在线一区二区
|
国产日本欧美一区二区
|
免费观看成人网
|
免费短视频成人日韩
|
久久久蜜桃一区二区人
|
欧美一二三区在线观看
|
亚洲一级在线
|
亚洲欧美日韩高清
|
欧美在线观看一区二区
|
久久免费黄色
|
欧美日韩免费在线视频
|
国产精品久久久爽爽爽麻豆色哟哟
|
久久久亚洲国产美女国产盗摄
|
久久九九精品
|
欧美国产日韩精品免费观看
|
国产精品视频久久一区
|
午夜精品久久久久久久99樱桃
|
国产午夜精品理论片a级大结局
|
夜夜嗨av色一区二区不卡
|
亚洲欧美日韩综合
|
亚洲人成网站精品片在线观看
|
裸体丰满少妇做受久久99精品
|
久久精品国产999大香线蕉
|
国语自产精品视频在线看抢先版结局
|
久久综合狠狠综合久久激情
|
亚洲成人自拍视频
|
欧美一区二区高清
|
国产精品午夜久久
|
欧美有码视频
|
性一交一乱一区二区洋洋av
|
欧美亚一区二区
|
亚洲一区二区免费在线
|
日韩视频精品在线
|
欧美色大人视频
|
香蕉av777xxx色综合一区
|
99在线精品观看
|
国产精品乱人伦一区二区
|
午夜精品久久久久久久久
|
亚洲一区二区黄色
|
韩国免费一区
|
欧美黑人国产人伦爽爽爽
|
欧美日韩国产限制
|
性18欧美另类
|
久久久久久久久一区二区
|
99亚洲一区二区
|
亚洲欧美日韩国产精品
|
亚洲国产精品va在线看黑人
|
亚洲精品久久久久久一区二区
|
欧美日韩亚洲视频一区
|
亚洲欧美日韩精品久久
|
久热精品视频在线观看
|
亚洲欧美偷拍卡通变态
|
免费一级欧美片在线播放
|
午夜精品网站
|
欧美日韩成人在线观看
|
韩国福利一区
|
亚洲精品一品区二品区三品区
|
免费视频亚洲
|
欧美日韩一区二区三区在线
|
久久久伊人欧美
|
欧美三级欧美一级
|
免费在线看成人av
|
国产精品乱子久久久久
|
亚洲日本中文
|
亚洲美女色禁图
|
欧美肥婆在线
|
亚洲日本一区二区
|
99re6热只有精品免费观看
|
老色鬼精品视频在线观看播放
|
亚洲女ⅴideoshd黑人
|
欧美三日本三级三级在线播放
|
亚洲精品国产精品国产自
|
最新日韩在线视频
|
欧美日韩另类字幕中文
|
亚洲九九精品
|