最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C++基礎(chǔ)語法梳理:const,static以及 this 指針

2021-09-03 18:49 作者:C語言編程__Plus  | 我要投稿



const

作用

修飾變量,說明該變量不可以被改變;

修飾指針,分為指向常量的指針(pointer to const)和自身是常量的指針(常量指針,const pointer);

修飾引用,指向常量的引用(reference to const),用于形參類型,即避免了拷貝,又避免了函數(shù)對值的修改;

修飾成員函數(shù),說明該成員函數(shù)內(nèi)不能修改成員變量。

const 的指針與引用

指針

指向常量的指針(pointer to const)

自身是常量的指針(常量指針,const pointer)

引用

指向常量的引用(reference to const)

沒有 const reference,因為引用只是對象的別名,引用不是對象,不能用 const 修飾

(為了方便記憶可以想成)被 const 修飾(在 const 后面)的值不可改變,如下文使用例子中的?p2、p3

const 使用


static

作用

修飾普通變量,修改變量的存儲區(qū)域和生命周期,使變量存儲在靜態(tài)區(qū),在 main 函數(shù)運(yùn)行前就分配了空間,如果有初始值就用初始值初始化它,如果沒有初始值系統(tǒng)用默認(rèn)值初始化它。

修飾普通函數(shù),表明函數(shù)的作用范圍,僅在定義該函數(shù)的文件內(nèi)才能使用。在多人開發(fā)項目時,為了防止與他人命名空間里的函數(shù)重名,可以將函數(shù)定位為 static。

修飾成員變量,修飾成員變量使所有的對象只保存一個該變量,而且不需要生成對象就可以訪問該成員。

修飾成員函數(shù),修飾成員函數(shù)使得不需要生成對象就可以訪問該函數(shù),但是在 static 函數(shù)內(nèi)不能訪問非靜態(tài)成員。


this 指針

this?指針是一個隱含于每一個非靜態(tài)成員函數(shù)中的特殊指針。它指向調(diào)用該成員函數(shù)的那個對象。

當(dāng)對一個對象調(diào)用成員函數(shù)時,編譯程序先將對象的地址賦給?this?指針,然后調(diào)用成員函數(shù),每次成員函數(shù)存取數(shù)據(jù)成員時,都隱式使用?this?指針。

當(dāng)一個成員函數(shù)被調(diào)用時,自動向它傳遞一個隱含的參數(shù),該參數(shù)是一個指向這個成員函數(shù)所在的對象的指針。

this?指針被隱含地聲明為:?ClassName *const this,這意味著不能給?this?指針賦值;在?ClassName?類的?const?成員函數(shù)中,this?指針的類型為:const ClassName* const,這說明不能對?this?指針?biāo)赶虻倪@種對象是不可修改的(即不能對這種對象的數(shù)據(jù)成員進(jìn)行賦值操作);

this?并不是一個常規(guī)變量,而是個右值,所以不能取得?this?的地址(不能?&this)。

在以下場景中,經(jīng)常需要顯式引用?this?指針:

為實現(xiàn)對象的鏈?zhǔn)揭茫?/p>

為避免對同一對象進(jìn)行賦值操作;

在實現(xiàn)一些數(shù)據(jù)結(jié)構(gòu)時,如?list。

寫在最后:對于準(zhǔn)備學(xué)習(xí)C/C++編程的小伙伴,如果你想更好的提升你的編程核心能力(內(nèi)功)不妨從現(xiàn)在開始!

微信公眾號:C語言編程學(xué)習(xí)基地

整理分享(多年學(xué)習(xí)的源碼、項目實戰(zhàn)視頻、項目筆記,基礎(chǔ)入門教程)

歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長比自己琢磨更快哦!



C++基礎(chǔ)語法梳理:const,static以及 this 指針的評論 (共 條)

分享到微博請遵守國家法律
平陆县| 灵台县| 万安县| 兴隆县| 资源县| 镶黄旗| 金湖县| 宜宾市| 皮山县| 齐齐哈尔市| 顺昌县| 宁德市| 丰宁| 临洮县| 四子王旗| 许昌县| 乐陵市| 北碚区| 阿克苏市| 仪陇县| 都匀市| 沧州市| 新绛县| 通榆县| 伊通| 纳雍县| 来安县| 错那县| 潢川县| 凤山市| 准格尔旗| 东至县| 澄江县| 大新县| 荆门市| 宁蒗| 贡山| 察隅县| 绥阳县| 揭阳市| 无棣县|