一 引用和指標的區別:
引用是對已有名稱的資料塊起的乙個別名,它與原先的名字作用一樣,都對該資料塊有操作許可權,二者始終資料一致。
int a =5; int &b =a; a 與 b所指的資料都是分給5的那塊。所以 &a == &b二者位址是一樣的。
#include "stdafx.h"
#include
using namespace std;
void main()
;int & getpersonid()
private:
int m_id;//設為私有型別
};void main()
加上靜態型別
要麼就是不用引用的返回型別 而改為值傳遞,這樣傳回的就是該資料的乙個副本,不會影響到私有成員的資料。
改為指標型別也一樣
class person
;int * getpersonid()
private:
int m_id;//設為私有型別
};void main()
{person ps;
int* id = ps.getpersonid();
cout<<*id《指標的 new 和 delete
int *p = new int(2);//在heap堆中動態申請乙個整型資料的記憶體空間 並賦初值為2;cout<<*p《在不用 p時 要呼叫 delete p; p = null,這時p指標仍然存在,只是不指向任何有效資料空間,釋放p所指的記憶體空間,如果在釋放之前 將p指向別的位址 如 p = null;那麼p原先所指的記憶體空間將無法釋放,而導致記憶體洩漏。
int *pp = new int[20];//動態申請20個整形資料空間,刪除時delete pp; pp =null;
表達能力有限 先記下這些把,以後再補充
引用與指標小節
一 引用和指標的區別 引用是對已有名稱的資料塊起的乙個別名,它與原先的名字作用一樣,都對該資料塊有操作許可權,二者始終資料一致。int a 5 int b a a 與 b所指的資料都是分給5的那塊。所以 a b二者位址是一樣的。include stdafx.h include using names...
指標與引用
摘自 高質量c 程式設計 指標與引用,在more effective c 的條款一有詳細講述,我給你轉過來 條款一 指標與引用的區別 指標與引用看上去完全不同 指標用操作符 和 引用使用操作符 但是它們似乎有相同的功能。指標與引用都是讓你間接引用其他物件。你如何決定在什麼時候使用指標,在什麼時候使用...
引用與指標
引用就是物件的另乙個名字,在實際的程式中,引用主要用作函式的形式引數。引用是一種復合型別,通過在變數名前新增 符號來定義。復合型別是指用其他型別定義的型別。在引用的情況下,每一種引用型別都 關聯到 某一其他型別。引用必須用與該引用同型別的物件初始化。當引用初始化後,只要該引用存在,它就保持繫結到初始...