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

            牽著老婆滿街逛

            嚴以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            入門教程:C++中的const限定修飾符

              const修飾符可以把對象轉變成常數對象,什么意思呢?

              意思就是說利用const進行修飾的變量的值在程序的任意位置將不能再被修改,就如同常數一樣使用!

              使用方法是:

            const?int?a=1;//這里定義了一個int類型的const常數變量a;

              但就于指針來說const仍然是起作用的,以下有兩點要十分注意,因為下面的兩個問題很容易混淆!

              我們來看一個如下的例子:

            ?

            #include? < iostream > ??
            using ? namespace ?std;??
            ??
            void ?main( void )??
            {??
            const ? int ?a = 10 ;??
            int ?b = 20 ;??
            ??
            const ? int ? * pi;??
            pi
            =& a;??
            cout?
            <<* pi? << ? " | " ? << ?a? << endl;??
            pi
            =& b;??
            cout?
            <<* pi? << ? " | " ? << b? << endl;??
            cin.
            get ();??
            }

            ?

              上面的代碼中最重要的一句是 const int *pi
              這句從右向座讀作:pi是一個指向int類型的,被定義成const的對象的指針
              這樣的一種聲明方式的作用是可以修改pi這個指針所指向的內存地址不能修改指向對象的值

              如果你在代碼后加上*pi=10;這樣的賦值操作是不被允許編譯的!

              好,看了上面的兩個例子你對const有了一個基本的認識了,那么我們接下來看一個很容易混淆的用法!

              請看如下的代碼:

            ?

            #include? < iostream > ??
            using ? namespace ?std;??
            ??
            void ?main( void )??
            {??
            int ?a = 10 ;??
            ??
            const ? int ? * const ?pi =& a;??
            ??
            cout?
            <<* pi? << ? " | " ? << a? << endl;??
            cin.
            get ();??
            }

            ?

              上面的代碼中最重要的一句是 const int *const pi
              這句從右向座讀作:pi是一個指向int類型對象的const指針

              這樣的一種聲明方式的作用是你不可以修改pi所指向對象的內存地址不能利用指針的解引用方式修改對象的值,也就是用*pi=10這樣的方式;

              所以你如果在最后加上*pi=20,想試圖通過這樣的方式修改對象a的值是不被允許編譯的!

              結合上面的兩點所說,把代碼修改成如下形式后就可以必然在程序的任意的地方修改對象a的值或者是指針pi的地址了,下面的這種寫法常被用語涵數的形式參數,這樣可以保證對象不會在涵數內被改變值!

            ?

            #include? < iostream > ??
            using ? namespace ?std;??
            ??
            void ?main( void )??
            {??
            const ? int ?a = 10 ; // 這句和上面不同,請注意!??
            ??
            const ? int ? * const ?pi =& a;??
            ??
            cout?
            <<* pi? << ? " | " ? << a? << endl;??
            cin.
            get ();??
            }

            posted on 2006-08-02 12:08 楊粼波 閱讀(363) 評論(0)  編輯 收藏 引用 所屬分類: C++

            久久精品成人欧美大片| 精品综合久久久久久98| 欧美一区二区三区久久综合| 久久精品国产亚洲AV无码麻豆| 久久久无码精品亚洲日韩按摩| 国产精品久久久久AV福利动漫| 久久精品成人免费看| 久久久久无码精品国产不卡| 久久这里只精品国产99热| 久久这里只有精品18| 久久久久久久亚洲Av无码| 精品熟女少妇aⅴ免费久久| 伊人久久大香线蕉精品不卡| 天天爽天天狠久久久综合麻豆| 久久r热这里有精品视频| 亚洲国产成人久久笫一页| 人妻精品久久无码专区精东影业| 久久久久免费精品国产| 久久精品国产日本波多野结衣| 国产精品视频久久久| 久久精品国产清自在天天线 | 老司机国内精品久久久久| 青青热久久综合网伊人| 无码人妻久久一区二区三区免费| 国产精品成人久久久久三级午夜电影 | 欧美激情精品久久久久| 国产精品久久久久蜜芽| 久久91精品国产91| 精品综合久久久久久88小说| 久久综合综合久久综合| 国产精品青草久久久久福利99 | 青草国产精品久久久久久| 久久久久99精品成人片三人毛片| 狠狠色丁香久久婷婷综合五月| 久久综合亚洲色一区二区三区| 久久久久亚洲AV成人网| 国产精品激情综合久久| 久久综合九色综合久99| 亚洲狠狠综合久久| 国产精品美女久久久久av爽| 国内精品久久久久久野外|