人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

C++中的const限定修飾符

C++中的const限定修飾符

更新時間:2022-07-18 文章作者:未知 信息來源:網絡 閱讀次數:

   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();  
}


溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 石家庄市| 泽普县| 巴林左旗| 万荣县| 惠东县| 黄龙县| 阜新| 扎囊县| 广丰县| 慈溪市| 洪湖市| 台中县| 赤壁市| 云林县| 嘉兴市| 象州县| 平山县| 秭归县| 广宁县| 海城市| 梨树县| 得荣县| 梁平县| 夏河县| 元江| 桃园县| 沙湾县| 吐鲁番市| 广德县| 武宁县| 资溪县| 德州市| 辽源市| 邢台县| 读书| 石屏县| 镇沅| 永福县| 巢湖市| 平泉县| 湖北省|