欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來(lái)到入門教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

C++ 中const和復(fù)合類型

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊: 次

1.const和引用

可以把引用綁定在常量上,稱之為,對(duì)常量的引用。不能對(duì)那個(gè)引用賦值。

如:

const int ci = 1024;
const int &ri = ci;

解讀:ri是對(duì)ci的引用。ri的const意思是視ci為變量。

對(duì)于常量,只能使用“對(duì)常量的引用”這個(gè)引用方式 int &ri = ci;是錯(cuò)誤的,因?yàn)閏i不能賦值,但是可能會(huì)對(duì)ri賦值從而影響const限定。

所以,他們(制定標(biāo)準(zhǔn)的人)創(chuàng)造了 對(duì)常量的引用 的 引用方式。

下面高能?。?!
上面說(shuō):

視ci為變量

為什么?

2.對(duì)常量的引用方式引用變量

int i =2048;
const &ri = i;

解讀:ri 把 i 視為變量,然后引用它

效果:不能對(duì)ri賦值,但是可以對(duì)i賦值。這里i是變量。

所以:“對(duì)常量的引用” 是一種引用|方式|! 對(duì)于真正的常量,必須使用這種方式,對(duì)于變量,這種方式使代碼不得通過(guò)引用來(lái)賦值。

這么想:你想開放一個(gè)對(duì)象,別人只能讀取,但你可以修改這個(gè)對(duì)象的值。

int i;  //你的對(duì)象
const int &ri = i;  //把這個(gè)傳出去

對(duì)常量引用可以綁定:常量,變量。。。字面值,表達(dá)式?。?!

int i = 5;
const int &ri1 = i; //const int& 綁定到 int 變量
const int &ri2 = 9; //正確:對(duì)常量引用可以
const int &ri3 = r1 * 2; //正確:反正ri是對(duì)常量的引用
int &r4 = r1 * 2; //錯(cuò)誤:普通引用就認(rèn)命吧

r3綁定的是當(dāng)時(shí)對(duì)這個(gè)表達(dá)式的求值得結(jié)果,是一個(gè)臨時(shí)量。

引用和const的那些事就完了。

噩夢(mèng),復(fù)合類型還有一個(gè),指針

3.指針和const

好消息:指針和引用差不多。

于是:

指向常量的指針

const int i = 2;
const int *pci = &i;

很像吧,一樣,對(duì)于常量,必須使用指向常量的指針。

現(xiàn)在指向變量:

int ii = 2;
const int *pci = ⅈ

同樣,解引用pci后不能賦值,但是可以直接對(duì)ii賦值。

大菜來(lái)了?。?!

4.const指針

復(fù)習(xí):指針是對(duì)象,而引用不是。

const指針 就是說(shuō):指針對(duì)象本身是常量,允許把指針本身定義為對(duì)象。

效果:const指針不能更改指向?qū)ο蟮牡刂贰?/p>

人話:1.必須初始化2.只能指向一處。

把*放在const關(guān)鍵字的前面,就說(shuō)明指針本身是常量。

int i = 0; //管你的想指變量還是常量
int *const cpi = &i; //將一直指向 i ;

大招:

指向常量的指針 和 常量指針是分開的.

const int *const cpci = &i;

分析:指向常量的常量指針。

性質(zhì):1.必須初始化(來(lái)自常量指針的屬性)

   2.指向是不會(huì)再變了(來(lái)自常量指針的屬性)

   3.既可以指常量,也可以指變量(來(lái)自指向常量的指針的屬性)

5.解脫

上面的定義太繞口了。好爽,這就是為什么C++難了。

定義:

拿指針做示例

頂層const:表示指針本身是常量

底層const:表示指針指向的對(duì)象是常量(或者看作是常量)

推理:

1.引用沒(méi)有頂層const,引用不是對(duì)象,只是綁定。

2.簡(jiǎn)單基本類型的常量都是頂層的。

3.指針可以既是頂層const又是底層const

坑:不要忽視底層const

int i;
const int *pc = &i;
int * p = pc; //錯(cuò)誤,pc具有底層const

底層const使用示例:只讀器

int i;
const int *ci = &i; //把這個(gè)傳出去,只讀的呦。

關(guān)于定義怎么理解,個(gè)人看法:

const int                        |    *const p;

指向?qū)ο蟮幕緮?shù)據(jù)類型|    聲明符

表示指向常量                 | 表示指針本身是常量

底層const                      | 頂層const

上一篇:C語(yǔ)言左旋轉(zhuǎn)字符串與翻轉(zhuǎn)字符串中單詞順序的方法

欄    目:C語(yǔ)言

下一篇:C/C++程序開發(fā)中實(shí)現(xiàn)信息隱藏的三種類型

本文標(biāo)題:C++ 中const和復(fù)合類型

本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/2500.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有