• <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>

            我的CPP之路

            路漫漫其修遠兮
            隨筆 - 42, 文章 - 0, 評論 - 16, 引用 - 0
            數據加載中……

            const小記_1

            眾所周知,const可保證被修飾的變量只讀,不被修改。
            就像const int i=0; 如果再來i=1的話編譯器就會報錯。
            但是,如果在函數的參數中使用const就要小心了,千萬別以為“僅僅”用const參數就可以保證傳遞的參數不被修改。代碼如下:

            #include <iostream>

            void changeInt(const int *);

            int main() {
                
            int i=0*pi=&i; //const int i=0, *pi=&i;
                std::cout << "i=" << i << std::endl;
                ::changeInt(pi);
                std::cout 
            << "i=" << i << std::endl;

                
            return 0;
            }


            void changeInt(const int *pci) {
                
            *(int *)pci = 1;
            }


            運行結果如下:
            i=0;
            i=1;

            呵呵,i本來就不是const的,用const修飾參數無法保證非const變量的安全,i被改了。
            要保證不被修改還是要把變量修飾為const,把main()中第一行改為注釋的內容,再編譯運行,得如下結果:
            i=0;
            i=0;

            const起作用了。

            以上代碼在G++ 3.4.5 中編譯通過。

            惡搞一下:
            以下代碼會有什么結果??
            const int i=0*pi=&i;
            *((int *)pi) = 1;
            還是G++ 3.4.5,編譯通過,沒錯,但是運行的時候windows xp彈出錯誤對話框,嘿嘿~~

            posted on 2008-03-18 19:18 yanvenhom 閱讀(304) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            久久青草国产精品一区| 亚洲va久久久噜噜噜久久男同| 国产成人综合久久综合| 国产精品久久永久免费| 国产免费久久精品丫丫| 亚洲国产欧美国产综合久久| 欧美久久精品一级c片片| 国产精品成人久久久| 久久九九青青国产精品| 亚洲中文久久精品无码ww16| 91麻豆精品国产91久久久久久| 亚洲午夜久久久久妓女影院| 久久九九久精品国产| 国产精品久久久久影视不卡| 伊人久久精品无码二区麻豆| 欧美亚洲另类久久综合婷婷| 久久精品国产福利国产秒| 一级a性色生活片久久无| 99久久精品国产综合一区| 国内精品伊人久久久久av一坑| 国产精品久久久久免费a∨| 久久e热在这里只有国产中文精品99| 久久国产亚洲精品无码| 无码精品久久久久久人妻中字| 人妻无码久久精品| 无码乱码观看精品久久| 久久一区二区免费播放| 久久婷婷五月综合成人D啪| 久久99精品免费一区二区| 9999国产精品欧美久久久久久| 91久久婷婷国产综合精品青草 | 久久人妻少妇嫩草AV无码专区| 无码八A片人妻少妇久久| 色8激情欧美成人久久综合电| 日韩精品久久久久久| 亚洲乱亚洲乱淫久久| 久久精品国产亚洲Aⅴ蜜臀色欲| 国产成人99久久亚洲综合精品| 99久久精品免费看国产一区二区三区 | 亚洲va久久久噜噜噜久久 | 怡红院日本一道日本久久 |