<strike id="ca4is"><em id="ca4is"></em></strike>
  • <sup id="ca4is"></sup>
    • <s id="ca4is"><em id="ca4is"></em></s>
      <option id="ca4is"><cite id="ca4is"></cite></option>
    • 二維碼
      企資網

      掃一掃關注

      當前位置: 首頁 » 企業資訊 » 資訊 » 正文

      C++基礎概念_const關鍵字

      放大字體  縮小字體 發布日期:2021-09-14 00:28:07    作者:企資小編    瀏覽次數:84
      導讀

      1) 定義常量有時候我們希望定義這樣一種變量, 它的值不能被改變。為了滿足這一 要求, 可以用關鍵字 const 對變量的類型加以限定。const對象一旦創建后其值就不能再改變,所以const對象必須在定義的時候就初始化。

      1) 定義常量

      有時候我們希望定義這樣一種變量, 它的值不能被改變。

      為了滿足這一 要求, 可以用關鍵字 const 對變量的類型加以限定。

      const對象一旦創建后其值就不能再改變,所以const對象必須在定義的時候就初始化。

      初始值可以是任意復雜的表達式。

      與非const類型所能參與的操作相比,const 類型的對象能完成其中大部分;

      主要的限制就是只能在 const 類型的對象上執行不改變其內容的操作。


      // const int max ; //error: uninitialized const 'max' const int max = 100 ; cout << max << endl ; int j = max ; cout << j << endl ;// max = j ; //error: assignment of read-only variable 'max'


      const定義常量與define的區別:

      const是有類型的,可以做類型檢查;define只是替換,是沒有類型檢查的,容易出錯。

      所以在C++推薦的做法是使用const,不推薦使用define


      2) 定義常量指針

      const T *用于定義常量指針。

      不可通過常量指針修改其指向的內容

       int n = 4 ; const int *p = &n ;// *p = 5 ; // error: assignment of read-only location '* p'

      常量指針指向的位置可以變化

       int n = 4 ; const int *p = &n ; n =5 ; int m = 6 ; p = &m ; cout << *p << endl ;

      不能把常量指針賦值給非常量指針,反過來可以

       int n = 4 ; const int *p = &n ; n =5 ; int m = 6 ; p = &m ; int * p2 = &n ; p = p2 ; // no error cout << *p << endl ;// p2 = p ; //error: invalid conversion from 'const int*' to 'int*'

      3) 定義常引用

      不能通過常引用修改其引用的變量

       const int &r = m ; cout << r << endl ;// r = n ; //error: assignment of read-only reference 'r'

      const T 類型的常變量和 const T & 類型的引用則不能用來初始化 T & 類型的引用

      T &類型的引用 或 T類型的變量可以用來初始化 const T & 類型的引用。

       int & r = m ; const int &t = r ;// int & y = t ; // error: binding reference of type 'int&' to 'const int' discards qualifiers

      參考代碼:

      #include <iostream>#include <cstdio>using namespace std;int main (){// const int max ; //error: uninitialized const 'max' const int max = 100 ; cout << max << endl ; int j = max ; cout << j << endl ;// max = j ; //error: assignment of read-only variable 'max' int n = 4 ; const int *p = &n ;// *p = 5 ; // error: assignment of read-only location '* p' cout << *p << endl ; n =5 ; cout << *p << endl ; int m = 6 ; p = &m ; cout << *p << endl ; int * p2 = &n ; p = p2 ; cout << *p << endl ;// p2 = p ; //error: invalid conversion from 'const int*' to 'int*' int & r = m ; const int &t = r ; cout << t << endl ;// t = n ; //error: assignment of read-only reference 't'// int & y = t ; // error: binding reference of type 'int&' to 'const int' discards qualifiers return 0 ;}


      輸出結果:

      g++ const_pointer.cpp./a.out10010045656
       
      (文/企資小編)
      免責聲明
      本文僅代表作發布者:企資小編個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
       

      Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

      粵ICP備16078936號

      微信

      關注
      微信

      微信二維碼

      WAP二維碼

      客服

      聯系
      客服

      聯系客服:

      在線QQ: 303377504

      客服電話: 020-82301567

      E_mail郵箱: weilaitui@qq.com

      微信公眾號: weishitui

      客服001 客服002 客服003

      工作時間:

      周一至周五: 09:00 - 18:00

      反饋

      用戶
      反饋

      午夜久久久久久网站,99久久www免费,欧美日本日韩aⅴ在线视频,东京干手机福利视频
        <strike id="ca4is"><em id="ca4is"></em></strike>
      • <sup id="ca4is"></sup>
        • <s id="ca4is"><em id="ca4is"></em></s>
          <option id="ca4is"><cite id="ca4is"></cite></option>
        • 主站蜘蛛池模板: xxxxx做受大片在线观看免费| 公交车上性配合享受视频| 五月丁香六月综合av| 1000部拍拍拍18勿入免费视频软件| 欧美日韩大片在线观看| 国产色视频在线| 亚洲天堂第一区| **性色生活片毛片| 欧美亚洲第一区| 国产欧美一区二区精品久久久| 亚洲AV无码专区国产乱码DVD| 四虎在线视频免费观看视频| 最近2019免费中文字幕视频三| 国产成人综合久久综合| 久久精品99视频| 色综合久久天天综线观看| 成年女人免费v片| 日本护士恋夜视频免费列表| 国产卡一卡二卡三卡四| 久久丫精品久久丫| 精品女同一区二区三区在线| 天天影视色香欲性综合网网站 | 亚洲最大色视频| 福利网址在线观看| 日韩欧美在线播放视频| 国产乱子影视频上线免费观看| 中文字幕成人乱码在线电影| 精品人人妻人人澡人人爽牛牛| 天天躁日日躁狠狠躁人妻| 亚洲欧美精品午睡沙发| 天天影视色香欲性综合网网站| 日韩一区精品视频一区二区| 四虎影视永久免费观看| 久热综合在线亚洲精品| 色吧亚洲欧美另类| 天天躁夜夜躁狠狠躁2023| 亚洲国产精品福利片在线观看| 黄色片一级免费看| 性猛交╳xxx乱大交| 人妖在线精品一区二区三区| 又黄又骚的网站|