卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章76552本站已运行4323

C++ 函数调用的返回值传递方式

c++++ 函数调用的返回值传递方式分为两种:值传递和引用传递。值传递是将函数返回值的副本传递给调用方,引用传递是将函数返回值的引用传递给调用方,修改返回值会影响原值。

C++ 函数调用的返回值传递方式

C++ 函数调用的返回值传递方式

在 C++ 中,函数可以返回各种数据类型,包括基本类型(int、char、float 等)和用户自定义类型(类、结构等)。函数调用的返回值可以通过两种方式传递:值传递和引用传递。

值传递

值传递是将函数返回值的副本传递给调用方。也就是说,当函数返回时,调用方得到的是返回值的副本,而不是指向原值的引用。

int add(int a, int b) {
    return a + b;
}

int main() {
    int x = 5;
    int y = 6;
    int sum = add(x, y);  // 调用 add 函数,值传递
    cout << "sum: " << sum << endl;
}

在上面的代码中,add 函数返回两个整数的和。调用 add 时,变量 x 和 y 的值被传递给函数。函数返回的和存储在局部变量 sum 中。因为是值传递,所以修改 sum 不会影响 x 和 y 的值。

立即学习“C++免费学习笔记(深入)”;

引用传递

引用传递是指将函数返回值的引用传递给调用方。这意味着,调用方获得的是指向原值的指针,对返回值的修改会影响原值。

void swap(int& a, int& b) {
    int temp = a;
    a = b;
    b = temp;
}

int main() {
    int x = 5;
    int y = 6;
    swap(x, y);  // 调用 swap 函数,引用传递
    cout << "x: " << x << endl;  // 10
    cout << "y: " << y << endl;  // 5
}

在上面的代码中,swap 函数交换两个整数的值。调用 swap 时,变量 x 和 y 的引用被传递给函数。函数对传入的引用进行修改,因此修改的值会影响原值。因此,在 main 函数中,x 和 y 的值被交换。

卓越飞翔博客
上一篇: PHP 函数中的引用传递与值传递的优缺点
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏