對乙個資料可以建立引用,他的作用是為變數起乙個別名
int a;
int&b = a;
//宣告b是a的引用
不要理解成取位址了喔~
ps:1.引用並不是一種資料型別。對引用只有宣告,沒有定義
2.宣告乙個引用的同時要初始化它,即宣告他代表哪乙個變數
3.在宣告乙個引用後,不能再使之作為另一變數的引用
4.不能建立引用陣列int a[5];int &b = a;錯誤!
5.不能建立引用的引用
6.能取引用的位址,此時取的位址為其引用變數的位址
引用的本質還是指標
#includeusing namespace std;
int main(void)
{ void swap(int &,int &);//傳遞的是引用,是真正的傳位址
//傳遞指標實際上也是傳值,只不過傳的值是位址
int i = 3,j = 5;
swap(i,j);
cout<<"i="《引用本身不是乙個物件,所以不能定義指向引用的指標,但指標是物件,所以存在對指標的引用
int i = 42;
int *p;
int *&r = p;//r是對指標p的引用
r = &i;//令p指向i
*r = 0;
如何理解指向指標的引用呢?
離變數名最近的符號對變數的型別有著最直接的影響
此處是&,說明本質是個引用,*符號說明引用的是乙個指標。
const int ci = 1024;
const int &r1 = ci;//正確
r1 = 42;//錯誤ci是const型別常量,不可改值
int &r2 = ci;//錯誤,int &r2說明ci可以被改變,但ci是const,所以兩者不符
可以const引用不const,但不const引用const是非法的
int i = 42;
int &r1 = i;//引用r1繫結物件i
const int &r2 = i;//r2也繫結i,但不能通過r2修改i的值,因為引用是const
r1 = 0;//正確
r2 = 0;//錯誤
Perl標量的特有用的函式
對標量進行操作還可以使用下面的函式。第乙個是length 這個函式可以返回變數列印出來的長度。例如 length 23 將會返回2 length hahaha 將會返回6 length 1 將返回1。在perl5中length 你好 將會返回4,聽說在perl5.6中將不會。我沒有實驗過,不好說什麼...
C 引用用法
引用就是給變數取外號而已。void r x 不能建立void型別引用 int r x 不能建立引用的引用 int p x 不能建立指向引用的指標,但是可以建立指向指標的引用 int ra 10 a 不能建立引用的陣列 總結 引用一有三無 有型別,無引用,無指標,無陣列 includeusing na...
C 中引用的用法
因為c 的所有物件都是從object派生,所以c 物件的建立,類似c 中指標的建立,如果按照c 的模式來理解c 的引用關係就非常簡單了。c 物件之間的傳遞,始終是傳遞的是指標 按照c 的理解 所以在函式引數傳遞過程中就需要考慮到應用的問題了,也就是給指標的位址重新賦值。看看我這個c 的新手自己寫的d...