国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++為什么要用引用而不是指針

2019-11-11 06:11:35
字體:
供稿:網(wǎng)友

我相信有很多剛學(xué)完C,再學(xué)C++的人都會有個疑惑,引用是干嘛的,為什么不用指針?

首先,引用 跟 指針 在作用上沒有太多區(qū)別,作用都是 當(dāng)遇到較大的 對象(變量)作為函數(shù)的 形參 傳遞時,用引用或指針可以節(jié)省內(nèi)存的開銷,因為他不像按值傳遞那樣,

額外要創(chuàng)建臨時變量。

既然這樣,那為什么C++要用引用呢?

引用是一段內(nèi)存的別名,引用的大小跟所代表的變量的大小是一樣的,而指針?biāo)拇笮t永遠(yuǎn)都是4個字節(jié)。

而且 引用 的風(fēng)格更符合C++面向?qū)ο蟮乃枷搿V羔樣?-> 來使用對象下的成員。而引用則用 . 來使用對象下的成員。

	struct a zje;	struct a &b = zje;	struct a *c = &zje;		//b.a 和 c->a 是一樣的,都是使用zje下的a成員。 引用和指針的不同:

(1)指針在定義的時候可以不初始化,但引用在定義的時候必須初始化。

(2)指針可以為空,引用不能為空。

(3)指針可以改變他的指向的對象,但引用不可以。

(4)有const 指針,沒有 const 引用。

(5)指針有多級,如 int **ptr,但引用只有一級,不存在 int &&a; 


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 乌鲁木齐县| 伊金霍洛旗| 城口县| 黎平县| 平阴县| 商水县| 三台县| 贵溪市| 永修县| 武夷山市| 株洲县| 大厂| 周口市| 郸城县| 江山市| 佛坪县| 清水河县| 漳浦县| 陇南市| 崇文区| 浦江县| 依安县| 长寿区| 略阳县| 于田县| 隆化县| 岳普湖县| 仪征市| 乌拉特前旗| 扎兰屯市| 聂拉木县| 赫章县| 广平县| 鄂尔多斯市| 鸡东县| 满洲里市| 丹凤县| 海南省| 陆丰市| 雅安市| 镇雄县|