最近在複習丟掉的c++知識點,複習到引用時發現一個很有趣的點,原網址是http://c.biancheng.net/cpp/biancheng/view/2762.html
作爲函數返回值的引用類型
下面的代碼略有深度,初學者如果無法理解請跳過。請先看下面的程序,有沒有問題?- #include <iostream>
- using namespace std;
- int &f();
- int x;
- int main ( )
- {
- f() = 100;
- cout << x << endl;
- return 0;
- }
- int &f()
- {
- return x;
- }
上面這個函數的返回值是引用類型,通過函數結果的設置反過來去改變“源頭”數據,這種“逆向引用”爲C++增強了很多功能,當然也有許多需要注意的地方。
還是第一次碰到“結果改變源頭”,哈哈,這是個不錯的網站。