亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

const類對象和const成員函數的用法及編程技巧

2019-11-11 04:48:36
字體:
來源:轉載
供稿:網友

一些成員函數改變對象的數據成員值,一些成員函數不改變對象得數據成員值。 例如: int Point::GetY() { return yVal; } 這個函數被調用時,不改變Point對象數據成員值,而下面的成員函數改變Point對象的數據成員值: 例如: void Point:: SetPt (int x, int y) { xVal=x; yVal=y; }

為了使成員函數的意義更加清楚,我們可在不改變對象的成員函數的函數原型中加上const說明,(實際上,任何任何不修改成員數據的函數都應該聲明為const函數,這樣有助于提高程序的可讀性和可靠性。

class Point { public: int GetX() const; int GetY() const; void SetPt (int, int); void OffsetPt (int, int); PRivate: int xVal, yVal; }; const成員函數應該在函數原型說明和函數定義中都增加const限定: int Point::GetY() const { return yVal; }

class Set { public: Set (void){ card = 0; } bool Member(const int) const; void AddElem(const int); //… }; bool Set::Member (const int elem) const { //… }

  非常量成員函數不能被常量成員對象調用,因為它可能企圖修改常量的數據成員: const Set s; s.AddElem(10); // 非法: AddElem不是常量成員函數 s.Member(10); // 正確

但構造函數和析構函數對這個規則例外,它們從不定義為常量成員,但可被常量對象調用(被自動調用)。它們也能給常量的數據成員賦值,除非數據成員本身是常量。

為什么需要const成員函數? 我們定義的類的成員函數中,常常有一些成員函數不改變類的數據成員,也就是說,這些函數是”只讀”函數,而有一些函數要修改類數據成員的值。如果把不改 變數據成員的函數都加上const關鍵字進行標識,顯然,可提高程序的可讀性。其實,它還能提高程序的可靠性,已定義成const的成員函數,一旦企圖修 改數據成員的值,則編譯器按錯誤處理。

const成員函數和const對象 實際上,const成員函數還有另外一項作用,即常量對象相關。對于內置的數據類型,我們可以定義它們的常量,用戶自定義的類也一樣,可以定義它們的常量對象。例如,定義一個整型常量的方法為:

const int i=1 ; 同樣,也可以定義常量對象,假定有一個類classA,定義該類的常量對象的方法為: const classA a(2); 這里,a是類classA的一個const對象,”2”傳給它的構造函數參數。const對象的數據成員在對象壽命期內不能改變。但是,如何保證該類的數據成員不被改變呢? 為了確保const對象的數據成員不會被改變,在C++中,const對象只能調用const成員函數。如果一個成員函數實際上沒有對數據成員作任何形式的修改,但是它沒有被const關鍵字限定的,也不能被常量對象調用。下面通過一個例子來說明這個問題:

class C { int X; public: int GetX() { return X; } void SetX(int X) { this->X = X; } }; void main() { const C constC; cout<


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情网友自拍| 亚洲高清免费观看高清完整版| 国产精品视频一区国模私拍| 欧美日韩美女在线观看| 亚洲国产日韩欧美综合久久| 国产日韩换脸av一区在线观看| 国语自产精品视频在线看一大j8| 久久久中精品2020中文| 亚洲三级av在线| 国产精品美女免费视频| 亚洲精品久久久一区二区三区| 日韩av在线电影网| 97在线观看免费高清| 91久久精品国产91久久性色| 国产999精品久久久影片官网| 亚洲精品美女网站| 日本亚洲欧美三级| 欧美日本在线视频中文字字幕| 奇米影视亚洲狠狠色| 国产精品美女www爽爽爽视频| 亚洲精品久久久久中文字幕二区| 亚洲美女精品成人在线视频| 美女久久久久久久| 久久躁日日躁aaaaxxxx| 黄网站色欧美视频| 91精品视频观看| 欧美亚洲在线播放| 成人激情免费在线| 97久久超碰福利国产精品…| 久久99国产精品久久久久久久久| 亚洲乱码av中文一区二区| 久久久久久久一区二区三区| 国产啪精品视频网站| 欧美激情在线观看视频| 亚洲综合社区网| 久久久久久综合网天天| 中文字幕一精品亚洲无线一区| 最近免费中文字幕视频2019| 91免费的视频在线播放| 亚洲伊人久久综合| 久久夜精品香蕉| 国产一区二区三区在线观看视频| 亚洲伊人一本大道中文字幕| 国产精品成熟老女人| 日韩极品精品视频免费观看| 亚洲人午夜精品免费| 91亚洲精品久久久久久久久久久久| 精品高清美女精品国产区| 日韩国产精品亚洲а∨天堂免| 一区二区成人av| 日韩禁在线播放| 国产欧美在线视频| 麻豆国产va免费精品高清在线| 久久6精品影院| 亚洲最大的免费| 色诱女教师一区二区三区| 欧美一区第一页| 欧美激情xxxx| 国产精品久久久久久五月尺| 91日韩在线播放| 国色天香2019中文字幕在线观看| 亚洲精品理论电影| 国产亚洲一区精品| 亚洲精品v天堂中文字幕| 亚洲伊人久久大香线蕉av| 疯狂做受xxxx高潮欧美日本| 日韩电影中文字幕一区| 91欧美精品午夜性色福利在线| 亚洲欧美综合精品久久成人| 久久福利视频网| 亚洲激情视频在线观看| 国a精品视频大全| 午夜精品久久久久久久男人的天堂| 精品久久久中文| 亚洲国产成人精品女人久久久| 伊人伊成久久人综合网小说| 国产精品揄拍一区二区| 国内精品视频久久| 日韩精品在线观看网站| 日韩电影中文 亚洲精品乱码| 在线a欧美视频| 亚洲va久久久噜噜噜久久天堂| 国产免费一区二区三区在线观看| 亚洲精品之草原avav久久| 这里只有精品在线观看| 91在线观看免费网站| 欧美人与性动交a欧美精品| 日韩精品一二三四区| 日韩电影中文字幕av| 久久久久久久久久久亚洲| 日韩免费电影在线观看| 在线观看国产欧美| 亚洲最大激情中文字幕| 亚洲精品www久久久| 国产成人极品视频| 亚洲毛片一区二区| 中日韩美女免费视频网址在线观看| 成人欧美在线视频| 国产色婷婷国产综合在线理论片a| 91久久精品国产91久久| 色偷偷噜噜噜亚洲男人| 欧美成人精品一区二区| 91精品国产高清久久久久久久久| 亚洲影院高清在线| 欧美日韩精品在线观看| 日韩在线观看免费全集电视剧网站| 亚洲另类图片色| 国产精品日韩av| 欧美精品免费在线观看| 久久色免费在线视频| 高清一区二区三区四区五区| 色综合久综合久久综合久鬼88| 亚洲国产欧美在线成人app| 国产精品自拍偷拍| 国产午夜精品理论片a级探花| 亚洲精品国产拍免费91在线| 久久香蕉国产线看观看av| 亚洲色图13p| 亚洲免费精彩视频| 中文字幕视频在线免费欧美日韩综合在线看| 中文字幕一区二区三区电影| 日韩福利视频在线观看| 亚洲a在线观看| 国产精品嫩草影院久久久| 国产视频精品在线| 日韩欧美中文字幕在线观看| 91亚洲国产成人久久精品网站| 欧美激情女人20p| 揄拍成人国产精品视频| 少妇高潮 亚洲精品| 亚洲成人激情在线| 欧美www视频在线观看| 亚洲影院色在线观看免费| 欧美高清在线播放| 日本一区二区三区在线播放| 亚洲一区av在线播放| 欧美激情久久久久| 国产精品成人aaaaa网站| 色偷偷av亚洲男人的天堂| 国产美女主播一区| 日本久久久久久久久| 97超级碰碰碰| 97av视频在线| 国产精品久久9| 亚洲最大中文字幕| 国产精品久久久久久久午夜| 欧美精品制服第一页| 最新中文字幕亚洲| 午夜精品久久久久久久久久久久久| 精品久久中文字幕| 尤物yw午夜国产精品视频| 欧美电影免费观看大全| 2020国产精品视频| 人妖精品videosex性欧美| 久久久精品一区二区三区| 永久免费看mv网站入口亚洲| 国产婷婷色综合av蜜臀av| 久久午夜a级毛片| 欧美xxxwww| 精品久久久久国产| 久久久午夜视频| 成人h视频在线| 成人激情视频在线播放| 日韩欧美精品在线观看|