• <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>
            隨筆 - 1, 文章 - 9, 評(píng)論 - 4, 引用 - 0
            數(shù)據(jù)加載中……

            static、作用域、連接屬性

            關(guān)于之前比較迷惑的static和作用域問題的一點(diǎn)總結(jié)。

            static int n; // file scoped ariable  
            float f; // global variable  
             
            int main()  
            {  
                    
            double d; // local variable  
            }  

            變量f的范圍可以說是global也可以說超出了所在文件。每個(gè)變量都有一個(gè)連接屬性,用于在連接時(shí)判斷其他文件是否有權(quán)利指向這個(gè)變量。這里的f聲明,c++默認(rèn)給它了一個(gè)連接屬性:extern,也就是說在其他文件中,可以使用這個(gè)變量,當(dāng)然前提是你包含了此文件,或者在一個(gè)工程里面(因?yàn)樗沁B接屬性)。對于變量n,前面的static導(dǎo)致這個(gè)變量的連接屬性為:此文件,就是說外部文件無法使用它。

            static之所以引起混淆,是因?yàn)橐婚_始學(xué)的時(shí)候,它的應(yīng)用在于把上面這個(gè)d,這個(gè)局部變量變的固定。講到static必然有個(gè)例子,是在函數(shù)中有個(gè)局部變量,然后聲明為static,接著自增,之后神奇的發(fā)現(xiàn)變量居然沒有自動(dòng)釋放。這其實(shí)還是個(gè)局部變量,出了函數(shù)是沒法使用的。

            對于extern,常用的做法還有:
            extern int array[];
            這樣在頭文件里面聲明一個(gè)數(shù)組類型,然后在cpp中定義它。

            posted on 2008-12-19 17:03 EiN 閱讀(883) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C/C++ and ASM

            精品无码久久久久久国产| 狠狠色婷婷综合天天久久丁香 | 午夜精品久久久久成人| 欧美一区二区久久精品| WWW婷婷AV久久久影片| 99久久国产综合精品成人影院| 久久人妻少妇嫩草AV无码蜜桃| 亚洲国产另类久久久精品黑人| 9999国产精品欧美久久久久久| 中文字幕亚洲综合久久菠萝蜜| 久久最新精品国产| 一本久久a久久精品亚洲| 精品99久久aaa一级毛片| 一本色道久久综合狠狠躁| 久久国产精品偷99| 狠狠色婷婷综合天天久久丁香| 精品久久亚洲中文无码| 久久久久久国产a免费观看不卡| 久久精品麻豆日日躁夜夜躁| 一级做a爰片久久毛片看看 | 久久久91人妻无码精品蜜桃HD| 一本色道久久99一综合| 久久这里的只有是精品23| 亚洲国产精品久久久久婷婷软件| 久久大香香蕉国产| 久久亚洲AV成人出白浆无码国产| 国产精品久久久久久久久软件| 久久久精品久久久久久| 国产成人99久久亚洲综合精品| 99久久精品午夜一区二区 | 99久久精品免费看国产一区二区三区| 国产成人精品综合久久久| 伊人久久大香线蕉精品不卡| 久久亚洲国产精品五月天婷| 久久久久九国产精品| 国产日韩欧美久久| 久久www免费人成看国产片 | 奇米影视7777久久精品| 久久久久99精品成人片试看| 国产精品久久久久久久久| 久久噜噜电影你懂的|