跳至正文
View Categories

< 1 min read

主要内容 #

1. 值传递 #

#include < iostream >

int dashima(int a, int b)  // 值传递
{
    return a>b ? a:b;
}
int main()
{
    int a, b;
    cin >> a >> b;
    
    cout << dashima(a,b);  // 调用
}

这是一种常见的函数参数形式。

这样形式的函数传参,有一个问题。那就是:
无法返回超过 1 个参数(因为 return 后面只可以有一个元素)。

这种情况下,我们可以使用“引用传递”

2. 引用传递 #

#include < iostream >

void dashima(int a, int b, int & result)  // 引用传递。请尝试一下,没有 & 的结果
{
    result = a>b ? a:b;
    cout << "result = " << result << endl;
}
int main()
{
    int a, b, res;
    cin >> a >> b;
    
    cout << dashima(a, b, res);  // 调用
}

值传递 和 引用传递的差别

  • 值传递 – 就像孙悟空的分身
  • 引用传递 – 就像孙悟空本尊
  • 习题 #

    课后练习