C++关于自定义函数求大小的问题

想问下为什么max的值为0

```c++
#include <iostream>
using namespace std;
void maxValue(int value1, int value2, int max)
{
    if (value1 > value2)
        max = value1;
    else
        max = value2;
}

int main()
{
    int max = 0;
    maxValue(1, 2, max);
    cout << "max is " << max << endl;
    return 0;
}

```

比较大小之后,maxValue函数返回值没有给出,相当于你的max一直是你初始化的0,修改如下,

#include <iostream>
using namespace std;
int maxValue(int value1, int value2, int max)
{
    if (value1 > value2)
        max = value1;
    else
        max = value2;
    return max;
}
int main()
{
    int max = 0;
    max = maxValue(1, 2, max);
    cout << "max is " << max << endl;
    return 0;
}

改成 void maxValue(int value1,int value2,int &max)
形参函数内修改不了外部值