一、概念
指針:指針是一個變量,只不過這個變量存儲的是一個地址,指向內存的一個存儲單元。
引用:引用跟原來的變量實質上是同一個東西,只不過是原變量的一個別名而已。
舉個例子:

引用的特性:
(1)引用在定義時必須初始化;
(2)一個變量可以有多個引用;
(3)引用一旦綁定了一個實體,就不能再改變?yōu)槠渌兞康囊谩?/p>
二、引用和指針的區(qū)別與聯系
1.相同點

2.不同點
(1)引用定義時必須初始化,指針可以不用初始化;
(2)引用一旦初始化為指向一個對象,就不能再指向其他對象,而指針可以在任何時候指向任何一個同類型的對象;
(3)沒有空引用,但是有空指針;
(4)在sizeof中的含義不同:引用結果為引用類型的大小,但指針始終是地址空間所占字節(jié)的個數(在32為平臺下,指針求sizeof永遠是4);
(5)引用++改變的是變量的內容,指針++改變的是指針的指向;
(6)有多級指針,但沒有多級引用;
(7)引用使用起來比指針更安全;
(8)如果返回動態(tài)內存分配的對象或者內存,必須使用指針,引用可能引起內存泄漏;
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。
舉報投訴
-
指針
+關注
關注
1文章
484瀏覽量
71843 -
C++
+關注
關注
22文章
2123瀏覽量
77110 -
引用
+關注
關注
0文章
8瀏覽量
7924
發(fā)布評論請先 登錄
相關推薦
熱點推薦
C++中指針和引用的區(qū)別
指針:指針是一個變量,只不過這個變量存儲的是一個地址,指向內存的一個存儲單元;而引用跟原來的變量實質上是同一個東西,只不過是原變量的一個別名而已。上面定義了一個整形變量和一個指針變量p
發(fā)表于 11-29 17:24
?8494次閱讀
C++程序設計教程之指針的詳細資料說明
本文檔詳細介紹的是C++程序設計教程之指針的詳細資料說明主要內容包括了:1. 指針的概念,2. 變量與指針,3. 數組與指針,4. 字符串與
發(fā)表于 03-14 16:04
?7次下載
指針和引用的區(qū)別及使用場景介紹
指針在聲明時可以暫時不初始化,即pointer = nullptr,指針在生命周期內隨時都可能是空指針,所以在每次使用時都要做檢查,防止出現空指針異常問題,而
C++的引用和指針
之前的文章我們已經介紹了C++中的基本類型如int,bool和double等,除了基本類型C++還有一些更復雜的數據類型復合類型,所謂的復合類型就是通過其他類型定義的類型,本篇文章我們將會著重介紹C++的復合類型
C語言 / C++基礎面試知識大集合
點擊上方名片關注我們C語言和C++相關的面試題一直比較少見一些,沒有Java方向寫的人那么多,這是一篇C語言與C++面試知識點總結的文章,非常難得。const作用修飾變量,說明該變量不
C++:指針和引用的區(qū)別與聯系
評論