最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

static_cast,dynamic_cast,reinterpret_cast,const_cast的區(qū)別及用法詳解

 更新時間:2013年09月23日 09:19:58   作者:  
以下是對static_cast,dynamic_cast,reinterpret_cast,const_cast的區(qū)別及用法進行了詳細的分析介紹,需要的朋友可以過來參考下

1.static_cast對類的指針只能轉(zhuǎn)換有繼承關(guān)系的類。對普通的指針來說只能在void*和其他指針之間轉(zhuǎn)換。它還可轉(zhuǎn)換簡單的類型,比如int到char等。不能提供數(shù)字到指針的轉(zhuǎn)換。不能提供不同類型指針之間的轉(zhuǎn)換比如int*到char*。

2.dynamic_cast提供安全的轉(zhuǎn)換如果兩個指針不存在繼承關(guān)系轉(zhuǎn)換會失敗返回空指針,如果你提供一個錯誤的指針那樣會發(fā)生內(nèi)存訪問異常,因為它會去比較兩個類型的虛函數(shù)表。虛函數(shù)表的指針一般放在對象指針最開始的四字節(jié)中,你去訪問一個錯誤的地址這樣肯定會發(fā)生異常。

3.reinterpret_cast提供數(shù)字到指針間的轉(zhuǎn)換比如void*到int。提供不同類型指針的強制轉(zhuǎn)換比如int*到char*。不提供int到char的轉(zhuǎn)換。但是處理類指針轉(zhuǎn)換的時候不能用它,它不會自動的調(diào)整指針。

4.const_cast把一個const指針轉(zhuǎn)為非const,最好不要用這個轉(zhuǎn)換。

相關(guān)文章

  • C++ BloomFilter布隆過濾器應(yīng)用及概念詳解

    C++ BloomFilter布隆過濾器應(yīng)用及概念詳解

    布隆過濾器是由布隆(Burton Howard Bloom)在1970年提出的 一種緊湊型的、比較巧妙的概率型數(shù)據(jù)結(jié)構(gòu),特點是高效地插入和查詢,可以用來告訴你 “某樣?xùn)|西一定不存在或者可能存在”,它是用多個哈希函數(shù),將一個數(shù)據(jù)映射到位圖結(jié)構(gòu)中
    2023-03-03
  • c++ 完備的運行時類型信息(動態(tài)類型信息)

    c++ 完備的運行時類型信息(動態(tài)類型信息)

    這篇文章主要介紹了c++ 完備的運行時類型信息,需要的朋友可以參考下
    2017-07-07
  • 字符串的模式匹配詳解--BF算法與KMP算法

    字符串的模式匹配詳解--BF算法與KMP算法

    這篇文章記錄一下串里面的模式匹配,模式匹配,顧名思義就是給定一個被匹配的字符串,然后用一個字符串模式(模型)去匹配上面說的字符串,看后者是否在前者里面出現(xiàn)。常用的有2種算法可以實現(xiàn),下面我們來具體探討下
    2014-08-08
  • C++中圖片類型的識別與轉(zhuǎn)換詳解方法

    C++中圖片類型的識別與轉(zhuǎn)換詳解方法

    本文簡單的介紹一下C++語言中如何識別圖片文件的類型,以及各圖片類型之間的轉(zhuǎn)換方法,并提供相關(guān)的源碼供大家參考,感興趣的朋友快來看看吧
    2021-11-11
  • c++的virtual和override作用及說明

    c++的virtual和override作用及說明

    這篇文章主要介紹了c++的virtual和override作用及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • c++查詢最短路徑示例

    c++查詢最短路徑示例

    這篇文章主要介紹了c++查詢最短路徑示例,需要的朋友可以參考下
    2014-05-05
  • C++高精度計時的幾種方法總結(jié)(測試函數(shù)運行時間)

    C++高精度計時的幾種方法總結(jié)(測試函數(shù)運行時間)

    本文介紹了C++中常用的幾種程序計時方法,包括clock()函數(shù)、GetTickCount()、QueryPerformanceCounter()以及C++11中的chrono庫函數(shù),這篇文章主要介紹了C++高精度計時的幾種方法,需要的朋友可以參考下
    2024-09-09
  • C++中的哈希容器unordered_map使用示例

    C++中的哈希容器unordered_map使用示例

    這篇文章主要介紹了C++中的哈希容器unordered_map使用示例,本文直接給出實例代碼,并講解了一些hash table的知識,需要的朋友可以參考下
    2015-06-06
  • C++超詳細講解引用和指針

    C++超詳細講解引用和指針

    引用是C++一個很重要的特性,顧名思義是某一個變量或?qū)ο蟮膭e名,對引用的操作與對其所綁定的變量或?qū)ο蟮牟僮魍耆葍r,這篇文章主要給大家總結(jié)介紹了C++中引用的相關(guān)知識點,需要的朋友可以參考下
    2022-06-06
  • C語言流程控制之switch語句詳解

    C語言流程控制之switch語句詳解

    這篇文章主要給大家介紹了關(guān)于C語言流程控制之switch語句的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01

最新評論

商河县| 曲松县| 上高县| 焉耆| 南雄市| 松桃| 志丹县| 上思县| 凤山市| 奈曼旗| 西宁市| 南通市| 堆龙德庆县| 南华县| 呼玛县| 醴陵市| 泾阳县| 昔阳县| 巴林右旗| 西乌| 沁阳市| 甘洛县| 湟源县| 濮阳县| 江永县| 青田县| 偃师市| 雷州市| SHOW| 新宾| 大冶市| 昭苏县| 景洪市| 石台县| 舒兰市| 当雄县| 南安市| 磴口县| 绥芬河市| 钦州市| 特克斯县|