• <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>
            隨筆 - 55  文章 - 15  trackbacks - 0
            <2012年5月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

                   為什么要用C++?效率?安全?可維護?
                   提高效率,最好的方法是用別人的代碼,即使用庫。只需要導入一個.lib文件或者.dll文件和相應的.h文件你就可以用這個庫中的接口了,這些接口的聲明在.h文件中。如ZThread庫,編譯之后的庫還需要導入你目前的工程中去。
                   一個庫通常從一組函數開始。
                   所有語言的核心都是數據以及對數據的操作。在c中,處理相關聯的數據的時候,就需要將數據組織成一個struct,然后操作這個struct。當操作的時候,我們面臨兩個問題:1. 每個函數必須包含這個struct對象的指針。2. 因為struct中的數據可以被其他程序隨意改變。所以可不可以控制這種未知的風險呢?
                  編譯時,在棧上創建一個變量,則該變量的存儲單元由編譯器自動開辟和釋放。編譯器準確地知道需要多少存儲容量,知道其變量的生命周期。而動態分配的內存,編譯器不知道需要多少存儲單元,不知道生命周期,也不能自動清除。
                  在c中,在使用Struct時必須包含聲明該結構體的頭文件,不然,編譯器不能正確地猜測這個結構像什么,但是它能猜測一個函數像什么。在頭文件中聲明是特別重要的,因為在包含頭文件的任何地方,編譯器準確地知道做什么。例如,如果在頭文件中的一個聲明是void func(float),編譯器就知道,如果用一個整型參數調用這個函數,應該把這個參數轉化為浮點型。如果沒有聲明,c編譯器簡單地假設有一個func(int)存在,它不會做轉換。
                  對于每個翻譯單元,編譯器創造一個目標文件。這些目標文件,連同必要的啟動代碼,由連接器連接為可執行程序。在連接過程中,應當確定所有的外部引用。當連接器將所有的目標文件放在一起時,它必須取未確定的外部引用,找出他們實際訪問的地址。在執行過程中用這些地址替換這些外部引用。所以,早綁定發生在連接階段。

                 c語言中,使用庫的最大障礙之一是名字沖突。編譯器和連接器不允許出現兩個名字相同的函數,解決的辦法是在名字前面加點東西以區別不同的函數。
                 邁向C++的第一步,把函數放在結構體中,用結構體限制函數名,相當于隱藏了名字。
                 c和C++的不同:頭文件中的聲明是編譯器要求的。
                 抽象數據類型,又可以成為用戶自定義類型。
            頭文件的重要性:
                 頭文件是我們和我們的庫用戶之間的合約。這份合約描述了我們的數據結構,為函數調用規定了參數和返回值,編譯器需要這些信息以生成正確的代碼。
                 放什么到頭文件中?只限于聲明,不涉及分配存儲的任何信息。
                 多次聲明的問題。
                 編譯器認為重聲明結構體是一個錯誤。C++允許重聲明函數。只要兩個聲明匹配即可。使用#pragma once 或者#ifndef #define #endif
            posted on 2012-05-29 13:19 Dino-Tech 閱讀(156) 評論(0)  編輯 收藏 引用
            99久久超碰中文字幕伊人| 久久久久久午夜成人影院| 久久国产免费直播| 伊人久久大香线蕉成人| 久久久久亚洲精品日久生情 | 精品人妻久久久久久888| 国产精品久久午夜夜伦鲁鲁| 777久久精品一区二区三区无码 | 久久这里只精品99re66| 国产精品9999久久久久| 久久乐国产综合亚洲精品| 99久久免费只有精品国产| 亚洲精品国产字幕久久不卡 | 亚洲精品tv久久久久| 久久精品国产免费| 亚洲AV日韩AV天堂久久| 久久青青国产| 色综合久久中文色婷婷| 久久天天躁狠狠躁夜夜网站 | 久久天天躁狠狠躁夜夜2020一| 97久久综合精品久久久综合| 精品国产乱码久久久久久呢| 久久久久亚洲av成人无码电影| 国产精品青草久久久久婷婷| 色欲久久久天天天综合网精品| 久久天天躁狠狠躁夜夜2020一| 久久精品成人欧美大片| 久久久精品免费国产四虎| 91精品国产乱码久久久久久| 99蜜桃臀久久久欧美精品网站| 久久久国产99久久国产一| 久久精品中文字幕有码| 国产高清美女一级a毛片久久w| 国产精品久久久久AV福利动漫| 亚洲国产精品无码久久一线| 97精品依人久久久大香线蕉97| 久久久国产亚洲精品| 亚洲国产精品18久久久久久| 久久综合香蕉国产蜜臀AV| 少妇人妻88久久中文字幕| 久久婷婷五月综合97色一本一本|