c++對c語言有很多功能上擴充套件,大部分的擴充套件都是為了實現物件導向的機制
引用的概念
型別嗎 & 引用名 = 某變數;
int n =4;
int&r = n;
//r引用了n,r的型別是 int &
某個變數的引用,等價於這個變數,相當於這個變數的乙個別名,相當於兩個是一回事了*
int n =
7;int
&r = n;
//r引用了n;
r =4;
cout /輸出4
cout /輸出4,因為r和n已經是一回事了
n =5
;cout << r;
//輸出5,因為上一行**對n進行了賦值
1.定義引用時一定要將其初始化成引用某個變數;2.初始化後,它就一直引用該變數,不會再引用別的變數了。【從一而終】;3.只能引用變數,不能引用常量和表示式
double a =
4,b =5;
double
& r1 = a;
//r1引用了a
double
& r2 = r1;
//r2引用了r1,等同於r2也引用了a
r2 =
10;
cout << a /10
r1 = b;
//因為引用是從一而終,r1並沒有在這裡引用b,而是對r1進行了賦值操作
cout << a << endl;
//5
引用應用的例子——值的交換
void swap(int a,
int b)
int n1,n2;
swap
(n1,n2)
//n1,n2的值不會交換
void swap(int
*a,int
*b)int n1,n2;
swap
(&n1,
&n2)
//n1,n2的值會交換
//c++引用的利用
void swap(int
& a,
int& b)
int n1,n2;
swap
(n1,n2)
//n1,n2的值會交換
4.引用作為函式的返回值
int n =
4;int
&setvalue()
//這個函式的返回值型別是引用
int main()
5.常引用
定義引用時,前面加const關鍵字
int n;
const
int& r = n;
//r的型別是 const int &
r =200
;//編譯出錯
n =300
;//ok
不能通過常引用修改其引用的內容 C 筆記1引用
include 標準命名空間 包含很多標準定義 using namespace std const double pi 3.14 圓class mycircle 獲取圓的面積 double gets void main 引用 void main 指標交換值 void swap1 int a,int ...
C 學習筆記(七) 引用
作用 給變數起別名 語法 資料型別 別名 原名 int a 10 int b a b 20 此時a b 20引用必須初始化 int b a int c 未初始化引用一旦初始化後就不能更改 引用必須引一塊合法的記憶體空間 int ref 10 錯誤操作 const int ref 10 正確操作,相當...
C 學習筆記 2 引用 reference
3 引用作函式引數 4 引用 vs 指標的區別 參考資料 生活中很多人既有姓名也有外號,引用的概念類似於人的外號。引用變數是乙個別名,即某個已存在變數的另乙個名字。一旦把引用初始化為某個變數,就可以使用該引用名稱或變數名稱來指向變數。格式 型別名 引用名 目標變數名 分別對別名和原名賦值,二者會相互...