1. 程式人生 > >C++ 把引用作為返回值

C++ 把引用作為返回值

這裡所要解決的問題是哈夫曼演算法中最核心的Select函式,選取兩個權值最小的根節點。

void Select(int &min1,int &min2,int m);

C++函式引數和返回值三種傳遞方式:值傳遞指標傳遞引用傳遞 (著重理解)
引用與指標的比較
引用是 C++中的概念,初學者容易把引用和指標混淆一起。一下程式中,n 是m 的
一個引用(reference),m 是被引用物(referent)。
int m;
int &n = m;
n 相當於m 的別名(綽號),對n 的任何操作就是對m 的操作。例如有人名叫王小毛,
他的綽號是“三毛”。說“三毛”怎麼怎麼的,其實就是對王小毛說三道四。所以n 既
不 是m 的拷貝,也不是指向m 的指標,其實n 就是m 它自己。

C 引用方式呼叫函式

C 函式 C 函式

通過引用傳遞方式,形參為指向實參地址的指標,當對形參的指向操作時,就相當於對實參本身進行的操作。

傳遞指標可以讓多個函式訪問指標所引用的物件,而不用把物件宣告為全域性可訪問。

/* 函式定義 */
void swap(int *x, int *y)
{
   int temp;
   temp = *x;    /* 儲存地址 x 的值 */
   *x = *y;      /* 把 y 賦值給 x */
   *y = temp;    /* 把 temp 賦值給 y */
  
   return;
}