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

積木

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>
            亚洲精选91| 最近中文字幕日韩精品| 亚洲在线观看视频| 国产精品电影观看| 欧美在线www| 欧美亚洲视频一区二区| 国产精品亚洲美女av网站| 欧美在线视频二区| 久久久久久久一区| 日韩午夜在线| 一区二区日韩精品| 国产亚洲高清视频| 亚洲欧美偷拍卡通变态| 免费观看成人| 一本大道久久a久久精品综合| 日韩视频三区| 国产精品一国产精品k频道56| 久久精品国产欧美激情| 榴莲视频成人在线观看| 亚洲亚洲精品三区日韩精品在线视频| 中文av一区特黄| 激情自拍一区| 日韩视频在线一区| 国产啪精品视频| 一区二区不卡在线视频 午夜欧美不卡'| 亚洲国产精品久久久久婷婷884| 欧美精品三区| 久久久久国产精品一区二区| 欧美成人小视频| 欧美一区二区视频在线观看2020| 久久久久中文| 亚洲欧美在线播放| 美女日韩欧美| 欧美一区亚洲| 欧美精品免费视频| 欧美激情第一页xxx| 国产精品乱码一区二三区小蝌蚪| 欧美大片在线看免费观看| 欧美婷婷久久| 亚洲国产精彩中文乱码av在线播放| 欧美私人网站| 亚洲国产欧美另类丝袜| 国产综合网站| 亚洲淫性视频| 一区二区三区精品| 免费h精品视频在线播放| 欧美中文字幕| 国产精品九九久久久久久久| 亚洲黄色在线| 亚洲国产成人久久综合| 久久久999| 久久久人成影片一区二区三区 | 免费在线观看日韩欧美| 国产精品免费一区豆花| 亚洲免费观看视频| 99re热这里只有精品视频| 久久永久免费| 欧美黑人在线播放| 亚洲国产精品成人精品| 久久久久久久成人| 免费欧美在线视频| 在线不卡中文字幕播放| 久久久一本精品99久久精品66| 午夜亚洲影视| 国产精品有限公司| 亚洲欧美国产精品va在线观看| 午夜精品视频一区| 国产精品入口尤物| 亚洲欧美卡通另类91av| 久久成人精品视频| 好吊视频一区二区三区四区| 久久久久在线| 亚洲福利视频免费观看| 日韩视频在线永久播放| 欧美三级第一页| 亚洲在线一区| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲电影免费观看高清完整版在线 | 在线看欧美日韩| 免费在线看一区| 亚洲精品美女在线观看| 亚洲欧美日韩精品久久亚洲区| 国产精品美女久久久久久免费| 午夜精品久久久久久久蜜桃app| 久久精品av麻豆的观看方式| 在线观看久久av| 欧美老女人xx| 亚洲欧美一区在线| 欧美成年人在线观看| 日韩写真在线| 国产婷婷成人久久av免费高清| 老司机精品久久| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 国产一区二区三区自拍| 久久一区二区三区国产精品| 亚洲人成网站在线播| 亚洲综合日韩在线| 一区在线免费观看| 欧美视频中文字幕在线| 久久成人综合网| 99国产精品久久久久老师| 欧美在线看片a免费观看| 亚洲日本精品国产第一区| 国产精品国码视频| 农村妇女精品| 欧美一区二区三区的| 亚洲日本一区二区| 久久亚洲图片| 亚洲欧美中文另类| 亚洲人体影院| 精品va天堂亚洲国产| 国产精品国产三级国产a| 免费91麻豆精品国产自产在线观看| 亚洲婷婷在线| 亚洲精品乱码久久久久| 久久天堂av综合合色| 亚洲永久免费av| 亚洲欧美一区二区三区久久 | 亚洲无玛一区| 国产自产女人91一区在线观看| 欧美精品日韩综合在线| 久久精品免费电影| 亚洲欧美在线视频观看| 亚洲三级影院| 一区二区日韩| 欧美激情一区二区三区蜜桃视频 | 亚洲欧美国产毛片在线| 91久久精品久久国产性色也91 | 欧美国产日韩一区二区在线观看| 久久se精品一区精品二区| 亚洲特色特黄| 一区二区三区日韩精品| 亚洲免费成人| 亚洲精品在线二区| 亚洲日本中文字幕| 亚洲三级色网| 亚洲精品影院| 亚洲精品一区二区在线| 亚洲国产日韩一区二区| 欧美国产日韩精品免费观看| 美女国内精品自产拍在线播放| 久久国产一二区| 久久久久免费| 理论片一区二区在线| 六十路精品视频| 欧美chengren| 91久久久久| 日韩视频免费观看高清在线视频| 亚洲剧情一区二区| 一本到12不卡视频在线dvd| 夜夜嗨av一区二区三区四季av| 99爱精品视频| 亚洲欧洲99久久| 欧美在线|欧美| 久久久久国产精品一区二区| 久久久无码精品亚洲日韩按摩| 久久久亚洲人| 欧美精品久久天天躁| 国产精品v欧美精品∨日韩| 国产精品久久一卡二卡| 国产日韩欧美电影在线观看| 激情校园亚洲| 日韩视频专区| 欧美亚洲一区三区| 欧美bbbxxxxx| 夜夜爽夜夜爽精品视频| 午夜精品福利一区二区三区av| 久久久久久久综合狠狠综合| 欧美精品一区二区三区一线天视频| 欧美视频在线观看视频极品| 国产婷婷色一区二区三区四区| 亚洲国产精品久久精品怡红院 | 在线观看中文字幕不卡| 亚洲精品日日夜夜| 欧美一区二区女人| 亚洲国产另类久久久精品极度| av成人动漫| 久久久美女艺术照精彩视频福利播放| 欧美激情精品久久久久久黑人| 国产精品手机在线| 亚洲精品色婷婷福利天堂| 午夜精品一区二区三区四区| 免费中文字幕日韩欧美| 中文国产成人精品| 噜噜噜噜噜久久久久久91| 国产精品久久亚洲7777| 亚洲高清视频一区二区| 羞羞色国产精品| 亚洲精品一区二区三区四区高清| 新67194成人永久网站| 欧美日韩国产页| 黄色欧美成人| 欧美在线观看视频| 日韩一级在线观看| 免费成人高清| 韩国av一区二区三区四区| 亚洲欧美一级二级三级| 亚洲国内欧美| 老司机一区二区三区| 国产日韩欧美视频|