gpt4 book ai didi

c++ - 在函数中通过引用调用

转载 作者:行者123 更新时间:2023-11-30 05:33:09 25 4
gpt4 key购买 nike

我正在练习 C++ 中的函数。在一些随机笔记中,我找到了一个按值调用函数和按引用调用函数的示例。

代码是

#include <string.h>
#include <iostream>
#include<stdio.h>

using namespace std;

void F1(float a, float b)
{
a++;b++;
}

void F2 (float &a, float &b)
{
a++;
b++;
}
int main ()
{
float a=9,b=5;

float *ptrA=&a;
float *ptrB=&b;

F1(a,b);
cout<<"\na:"<<a<<"\nb:"<<b;
F2(a,b);
cout<<"\na:"<<a<<"\nb:"<<b;
}

现在对于函数 F2,我感到困惑的是,在主函数中我传递了 a 和 b 的值,而在定义中它接收了变量 a 和 b 的地址。那么a和b的值如何递增呢?

最佳答案

电话

F2(a,b);

由于 F2 的声明方式,实际上发送的是 a 和 b 的地址,而不是它们的值。在 C++ 中,引用就像指针,只是语法更简洁。所以F2实际上是获取了a和b的地址,然后a++和b++对main()中定义的原始变量进行操作。

关于c++ - 在函数中通过引用调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34873205/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com