C++爲什麼用引用

轉載自:http://hi.baidu.com/chen_767/item/bf580c87c3d7bd28100ef3c3

引用類型通常被用於主子函數間需要互相傳遞大量數據的設計之中, 從而減少大量數據經過堆棧的複製.

在C語言中, 主子函數要對非全局變量實施寫操作時, 只能通過傳遞實(形)參的指針(地址)來實現.

直接使用指針很容易造成地址溢出的錯誤, 而用C++語言編制的同類程序中可使用引用類型使得傳遞的實參

和形參都指向同一個內存地址, 即減少了大量數據經過堆棧的複製, 又避免了地址溢出的錯誤的發生.

==============================

#include<stdio.h>

void t(int&);
int main()
{
int i = 0;
t(i);

printf("i = %d\n", i);

return 0;
}

void t(int &ip)
{
printf("ip = %d\n", ip++);
}

==============================

引用ip與指針傳遞不一樣的是引用並非內存實體, 是在編譯階段就把這2個符號的地址等同起來,

到運行階段後實際玩具傳遞的仍然是i的地址.

發佈了95 篇原創文章 · 獲贊 34 · 訪問量 59萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章