青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

積木

No sub title

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

常用鏈接

留言簿(1)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

說明:
      本文來自CSDN博客:http://blog.csdn.net/goodluckyxl/archive/2005/01/19/259851.aspx




強制轉化四種類型可能很多人都常常忽略就象我一樣,但是有時還是比較有用的。不了解的建議看看,一些機制我也不是十分了解,只是將一些用法寫出來讓大家看看。

強制轉化無論從語法還是語意上看,都是c++中最難看的特征之一。但是基于c風格的轉化的語義的不明確性及其一些潛在問題。強制類型轉化最終還是被c++接受了。
1.static_cast運算符號
static_cast<T>(e),stroustrup讓我們可以把它看成隱含轉換的顯示的逆運算。這個是有一定道理的,基于隱式轉化的對象類型我們可以使用static_cast轉化運算符號。它是靜態的檢測,無法運行時檢測類型,在繼承中尤為突出。
使用范圍
<1>用于所有系統類型之間轉化,不能用于系統類型指針類型轉化
  double t_d = 0;
int t_i= static_cast<int>(t_d); //是合法的轉化
而企圖將double*->int*是不允許的
<2>用于繼承類之間的轉化(含指針),不能用于其他沒有隱式轉化的對象類型之間的轉化
繼承舉例:
class x
{
};
class y: public x
{
};
使用:x t_o_x;
y t_o_y = static_cast<y>(t_o_x); //x* y*轉化也可以進行因為x,y繼承關
//系,類型可以自動隱式轉化使用
   隱式轉化舉例:
class x
{
};
class y
{

public:
    y( x i_x ) {}
};
    x t_o_x;
     y t_o_y = static_cast<y>(t_o_x); //大家看到y構造函數可以對于x類型隱式轉化
//所以可以將x->y,如果企圖將y->x會報錯
2.reinterpret_cast 運算
主要用于對于類型指針類型的強制轉化,some_type* -> special_type*這樣轉化,類型信息可以是不完全的。它允許將任意指針轉化到其他類型指針,也允許任意整數類型到任意指針類型轉化(BT)。這樣導致的結果是極其不安全的,不能安全的應用于其他目的,除非轉化到原來類型。
<1> 使用所有整形可以轉化為任意類型的指針(指針是4字節的long的東東,那么機器就認為同類型就是可以轉化)
int c;
x* p = reinterpret_cast<x*>(c); //x是自定義的任意類型,當然包括系統類型
<2> 可以對于任意類型指針之間轉化
y* c;
x* p = reinterpret_cast<x*>(c);//x,y代表所有自定義或系統類型
大家可以看到reinterpret_cast的轉化是極度的不負責任的,他只管轉化不檢測是否可以轉化。
<3> const_cast運算符號
這個很簡單從名字大家可以看出來,僅僅為了去掉或著加上const修飾符號。但是對于本身定義時為const的類型,即使你去掉const性,在你操作這片內容時候也要小心,只能r不能w操作,否則還是會出錯。
const char* p = "123";
char* c = const_cast<char*>(p);
c[0] = 1;  //表面上通過編譯去掉了const性,但是操作其地址時系統依然不允許這
//么做。這是一個漏洞吧
<4> dynamic_cast運算符號
Scott Mayers將其描述為用來執行繼承體系中:安全的向下轉型或者跨系轉型動作。也就是說你可以,用dynamic_cast將 指向base class的指針或引用轉型為 指向子類的對象的指針或引用。
class B {};  //polymorphic類型含virtual才能dynamic_cast
class D: public B {}
void f( B* pb )
{
    D* pd1 = dynamic_cast<D*>(pb);//如果pb為d類型正確返回,如果不是返回0
    D* pd2 = static_cast<D*>(pb); //不管怎么樣都返回指針有可能指向不合適的對
//象,因為static僅僅靜態檢測,不能得到運
//行時對象的信息是否真正為D類型
}

反正大家在使用知道怎么用就ok了,c++強制轉化在模板中還是非常有用的,其他時候本人也喜歡用c的轉化方便。^_^

posted on 2011-06-24 12:30 Jacc.Kim 閱讀(315) 評論(0)  編輯 收藏 引用 所屬分類: VC / C++
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲第一中文字幕| 欧美激情亚洲自拍| 曰韩精品一区二区| 翔田千里一区二区| 亚洲免费视频成人| 欧美全黄视频| 亚洲精品日韩精品| 亚洲人成在线影院| 欧美激情按摩在线| 亚洲日本欧美天堂| 黑丝一区二区三区| 久久国产免费看| 久久国产精品久久国产精品| 国产精品成人观看视频免费| 在线视频你懂得一区| 亚洲在线免费| 国产区日韩欧美| 久久精品国产清高在天天线 | 欧美日韩国产首页| 99国产一区二区三精品乱码| 亚洲小说欧美另类社区| 亚洲国产高清在线| 久久一区二区三区av| 男女精品网站| 一区二区三区亚洲| 久久aⅴ乱码一区二区三区| 国产精品青草久久久久福利99| 一区二区三区三区在线| 亚洲视频导航| 国产精品区免费视频| 亚洲一区久久| 久久久久**毛片大全| 激情久久五月天| 美女主播精品视频一二三四| 亚洲国产欧美一区二区三区久久| 亚洲美女色禁图| 国产精品久久久久久久浪潮网站| 午夜伦欧美伦电影理论片| 免费在线视频一区| 99精品免费视频| 国产精品一区二区你懂得| 久久久久9999亚洲精品| 91久久精品国产91久久| 午夜视频在线观看一区二区三区| 国产亚洲精品久久久| 久久综合伊人77777尤物| 亚洲人在线视频| 性色一区二区三区| 亚洲黄色有码视频| 国产精品网站视频| 另类专区欧美制服同性| 一区二区三区av| 老**午夜毛片一区二区三区| 99成人精品| 国产一区二区三区四区五区美女| 欧美国产免费| 香蕉尹人综合在线观看| 91久久极品少妇xxxxⅹ软件| 欧美一区二区三区四区在线观看地址 | 久久综合影音| 亚洲视频在线观看| 欧美77777| 99国产精品99久久久久久粉嫩| 国产免费一区二区三区香蕉精| 乱人伦精品视频在线观看| 亚洲一区综合| 亚洲黄网站在线观看| 久久精品欧洲| 亚洲一二三区在线观看| 亚洲国产欧美一区| 国产一区久久| 国产精品美女久久久久久2018| 欧美国产高潮xxxx1819| 久久久噜噜噜久久人人看| 中文国产一区| 亚洲日本欧美| 亚洲国产婷婷综合在线精品| 免费中文日韩| 老司机久久99久久精品播放免费| 欧美一级在线视频| 亚洲一区精彩视频| 一本色道久久综合狠狠躁的推荐| 精品va天堂亚洲国产| 国产精一区二区三区| 欧美日韩国产成人在线| 欧美波霸影院| 美女主播精品视频一二三四| 久久夜色精品国产欧美乱| 久久九九久精品国产免费直播| 亚洲欧美激情视频在线观看一区二区三区| 亚洲精品视频一区| 亚洲国产一区二区a毛片| 欧美精品免费播放| 久久久噜噜噜久噜久久| 翔田千里一区二区| 亚洲综合首页| 性色av一区二区三区在线观看| 亚洲午夜电影在线观看| 一区二区三区高清在线| 日韩一级黄色av| 亚洲久久成人| 在线亚洲精品福利网址导航| 99视频在线观看一区三区| 最新成人av在线| 亚洲日本va午夜在线影院| 亚洲国产精品成人综合| 亚洲国产精品一区二区第四页av | 亚洲综合成人婷婷小说| 亚洲免费在线精品一区| 性欧美精品高清| 久久精品一二三区| 久久五月激情| 欧美激情日韩| 亚洲精品国久久99热| 香蕉久久夜色| 欧美日韩理论| 欧美一级片久久久久久久| 欧美国产日韩一二三区| 蜜桃av噜噜一区二区三区| 国产精品久久久久久妇女6080 | 久久精品中文字幕免费mv| 亚洲午夜性刺激影院| 亚洲人成免费| 亚洲日韩第九十九页| 亚洲免费观看| 亚洲手机在线| 久久精品人人爽| 欧美国产高潮xxxx1819| 国产精品第13页| 国产一区二区三区在线观看视频| 亚洲电影专区| 亚洲一区二区三区成人在线视频精品 | 欧美日韩在线高清| 国产精品毛片| 狠狠88综合久久久久综合网| 亚洲国产老妈| 亚洲色在线视频| 欧美一区91| 欧美高清免费| 一本色道久久88综合日韩精品| 亚洲欧美日韩成人高清在线一区| 久久嫩草精品久久久久| 欧美日韩91| 亚洲一区观看| 久久综合一区二区| 久久视频在线视频| 国内精品模特av私拍在线观看| 1024国产精品| 亚洲一区二区av电影| 久久av一区二区三区漫画| 欧美激情 亚洲a∨综合| 亚洲一区二区精品| 久久综合激情| 国产裸体写真av一区二区| 亚洲国产精品日韩| 香蕉久久一区二区不卡无毒影院| 最新日韩在线视频| 一本久久a久久免费精品不卡| 久久国产精品久久久久久久久久| 欧美日韩高清在线| 精品电影一区| 午夜国产欧美理论在线播放| 亚洲国产日韩在线| 欧美一级片在线播放| 欧美日韩视频一区二区三区| 一区免费观看视频| 日韩视频一区二区三区在线播放免费观看| 国产精品视频一二三| 国产精品一区在线观看| 欧美久久在线| 欧美成人在线免费视频| 久久xxxx精品视频| 一区二区三区欧美激情| 日韩一区二区精品在线观看| 午夜激情一区| 国产精品99久久久久久白浆小说| 亚洲第一伊人| 一区二区三区日韩欧美| 日韩午夜电影| 亚洲尤物精选| 一区二区三区亚洲| 欧美视频一区二区三区四区 | 午夜精品久久久久99热蜜桃导演| 亚洲欧美国产精品va在线观看| 午夜国产精品视频| 国产日韩欧美麻豆| 久久综合网络一区二区| 亚洲午夜高清视频| 欧美大片一区二区| 亚洲精品国久久99热| 国产精品久久网| 国产精品成人一区二区三区吃奶| 欧美日韩中文字幕综合视频| 欧美精品一区二区视频| 欧美日韩无遮挡| 国产亚洲欧洲一区高清在线观看 | 夜夜嗨av一区二区三区网站四季av| 欧美日韩国产黄| 亚洲国产精品尤物yw在线观看| 久久亚洲电影|