在cout语句中使用函数调用时,通过refence传递失败

时间:2017-02-12 20:18:28

标签: c++ pass-by-reference cout

通过引用函数传递变量的通常概念是你想要使用那个确切的变量而不是它的副本,这很好。但是假设你有这个代码:

#include <iostream>
using namespace std;

    int dev(int &a, int b)
    {
        a = 5 + b;
        return b;
    }
    int main()
    { 
        int a = 0;
        int b;
        cin >> a >> b;
        cout << dev(a, b) << " "<< a;
        return 0;           
    }

输入a = 5, b = 10我希望输出10 15,但我得到10 5.

现在,如果不是

,问题就会消失
    cout << dev(a, b) << " "<< a;

我写

int res = dev(a,b);
cout << res << " " << a;

我想知道为什么会这样?

编辑:拼写

0 个答案:

没有答案