• <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>
            春暖花開
            雪化了,花開了,春天來了
            posts - 149,comments - 125,trackbacks - 0

            最近忙著看書,但發覺記憶不是很好。看時明明白白的東西,一會就忘了。覺得還是記錄下來,好記性不如爛筆頭,減慢閱讀的速度,增加思考的時間。

            More Effective C++之一 基礎議題

            條款1:區分指針和引用
            這個可以理解為:指針和引用有什么區別。
            一是指針可以為空,而引用不能為空。
            引用必須要指代某個對象。由于引用總是要指代一個對象,C++要求引用必須初始化。不存在空引用,則意味著引用比使用指針更高效。因為使用引用之前不需要測試它是否有效,而指針通常需要檢查其是否為空。
            二是指針可以被重新賦值用以指向另外一個不同的對象,而引用總是指向初始化時它所指代的對象。

            條款2:優先考慮C++風格的類型轉換
            這個可以有兩個問題需要明白:一是C風格的類型轉換有什么缺點;二是C++風格的類型轉換的優點。
            首先我們來看C風格類型轉換的缺點:
            其一是可以通過它們在任意類型之間進行轉換。有些轉換差別很大,但C風格的類型沒有做區分,行為有些粗魯。
            其二是C風格的類型轉換很難進行查找。

            c++風格的類型轉換:有4種類型轉換,分別是static_cast, const_cast, dynamic_cast和reinterpret_cast。
            使用時應寫成
            static_cast<typde> (expression),其他同理。

            static_cast 針對一種不涉及繼承的類型實施轉換,也不涉及const轉換的時候,就可以使用static_cast轉換。
            const_cast用來去除掉一個表達式的const屬性或volatile屬性。強調的是通過這個轉換你要做的唯一一件事情就是改變某些東西的const屬性或者volatile屬性。目前為止,最通常的用法是去除掉一個對象的const屬性。
            dynamic_cast,用來針對一個繼承體系做向下或者橫向的安全轉換。用dynamic_cast 把指向基類的指針(或引用)轉換成指向派生類或者基類的兄弟類的指針(或引用),而且同時可以知道轉換是否成功??罩羔樆蛘弋惓R馕吨?。
            reinterpret_cast最常見的用法是用來在函數指針之間進行類型轉換。這種轉換常常是由(編譯器的)實現所定義的,致使reinterpret_cast幾乎不可移植。對函數指針實施類型轉換是不可移植的,而且在某些情況下會產生不正確的。

            C++風格的類型轉換的優點:有確切的含義并容易識別,他們允許編譯器診斷類型轉換所產生的錯誤,不會使這些錯誤就在不知不覺的情況下被漏掉。

            該上班了,其他待續。。。



            posted on 2009-09-15 10:27 Sandy 閱讀(363) 評論(0)  編輯 收藏 引用 所屬分類: c++學習
            国产免费福利体检区久久| 中文字幕亚洲综合久久菠萝蜜| 久久精品国产亚洲AV麻豆网站| 久久99精品久久久久子伦| 青青青伊人色综合久久| 免费无码国产欧美久久18| 好属妞这里只有精品久久| 亚洲人成网站999久久久综合 | 国产毛片久久久久久国产毛片| 欧美日韩精品久久久久| 久久久久无码精品国产| 欧美一级久久久久久久大片| 国产99精品久久| 久久久久高潮综合影院| 精品无码久久久久久久久久| 久久人人爽人人爽人人片av高请| 久久亚洲国产精品五月天婷| 国产精品99久久精品| 久久免费的精品国产V∧| 欧美久久久久久| 亚洲国产精品无码久久青草| 久久久国产精品网站| 97精品伊人久久大香线蕉app| 亚洲欧美日韩中文久久| 久久91精品国产91久| 亚洲а∨天堂久久精品| 久久伊人五月天论坛| 精品久久久久久久久久中文字幕 | 欧洲人妻丰满av无码久久不卡| 亚洲成av人片不卡无码久久 | 亚洲欧洲久久久精品| 久久久久久国产精品免费免费| 66精品综合久久久久久久| 99久久精品午夜一区二区| 国产V亚洲V天堂无码久久久| 久久九九精品99国产精品| 国产精品一区二区久久不卡| 99久久er这里只有精品18| 91久久精品91久久性色| 久久综合九色综合精品| 国产高潮久久免费观看|