2016年2月25日 星期四

引用类型(reference type)


先前寫了一篇,
覺得對於這類文章還是得要來的了解,
所以寫一下筆記,
如果有寫錯請指教 如果太簡單請左轉出去
資料出處wiki 百度百科 等多方來源

引用

為c++一個新的變量類型, 其作用為給變量一個別名    
舉例: int a;
             int &b=a;
             表示b 為a 的引用(別名 綽號),
             使用a與b是具有相同作用



規則(相較於指針)

1.引用創建同時必須被初始化   (指針可以在任何時候被初始化)
2.不能用NULL(指針可以使用NULL)
3.一旦引用被初始化後 就不可改變引用關係(指針可隨時改變所指的對象)

舉例:
          int i = 5;
          int j = 6;
          int &k = i;
          k = j; // k和i的值都變成6;

===========================
        int a = 40;
int &b = a ;
cout<<"a: "<<a<<endl;
cout <<"a address: " << &a<< endl;
cout<<"b: "<< b<<endl;
cout<<"b address: "<< &b <<endl;
        
       執行結果:
       a: 40
       a address: 0x28ff18
       b: 40
       b address: 0x28ff18
     

與指針的運用

1 int ival = 1092;
2 int &re = ival; //ok
3 int &re2 = &ival; //错误
4 int *pi = &ival;
5 int *&pi2 = pi; //ok




沒有留言:

張貼留言