pass by value or pass by reference?
我們知道,當函數在傳遞值的時候,會新建一個變量(沒有名字)儲存這個值 然后傳遞。降低程序運行的效率。
如果使用引用(reference)傳遞的速度很快,就可以避免這樣的問題。
那么,什么是引用? 如何使用引用?
首先,在c++中,引用可以當做一個指針與指針有相同的作用,可以指向某個data,但是使用前必須指明引用哪個變量。
eg:
int a; int &b=a;
表示b是a的引用,此時b等價於a,對b進行修改,a也會被修改。
對於指針,定義時可以不用 初始化,但是引用一定要指明引用哪個變量。
正是因為引用有類似指針的特性,能夠直接access一個變量,就可能導致這個變量被修改,那么如何阻止這樣的事情發生呢?
const
當我們傳入的參數是一個const的reference,表示我們傳入的是常引用,這個參數不能被修改。
reference:
侯捷C++面向對象高級開發(上) 4
2020-03-0911:26:22