<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    作者:企資小編    瀏覽次數:78
      導讀

      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>
        • 主站蜘蛛池模板: 国产欧美专区在线观看| 亚洲va欧美va国产综合| 印度爱经hd在线观看| 亚洲精品成a人在线观看| 久久精品中文字幕免费| 99国产精品久久久久久久成人热 | 黄色三级电影免费| 黄色免费网站网址| 看AV免费毛片手机播放| 日本黄网站动漫视频免费| 在线日韩麻豆一区| 国产人成精品香港三级古代| 亚洲色偷偷综合亚洲av伊人| 中文字幕色婷婷在线精品中| www一区二区| 激情五月亚洲色图| 成人免费毛片观看| 国产成人做受免费视频| 亚洲图片国产日韩欧美| WWW国产精品内射熟女| 精品无码人妻一区二区三区品 | 欧美人与动zozo欧美人z0| 婷婷色香五月综合激激情| 国产午夜免费秋霞影院| 亚洲娇小性xxxx| 亚洲成人www| 欧美a级在线观看| 国产综合在线观看视频| 优优里番acg※里番acg绅士黑| 中文字幕无码日韩欧毛| 麻豆精产国品一二三产品区| 日本人内谢69xxxx| 国产成人av乱码在线观看| 亚洲国产小视频| 97公开免费视频| 激情欧美一区二区三区| 国产精品第1页| 亚洲日韩欧美综合| 2021国产精品久久| 污污的网站免费观看| 好多水好硬好紧好爽视频|