c++ - 为什么下面的代码在通过引用传递时不显示错误
问题描述
在主函数中,我创建了一个局部变量x
。然后通过引用 fun 函数来传递它。函数声明在哪里, int fun(int &x);
但我不明白局部变量是如何传递给 fun 函数的。如果它会 int&x=x
其中第一个 x 是形式参数,第二个x
是局部变量。虽然语句 int&x=x
在函数中显示错误。但为什么这里没有显示任何错误或警告。如果有人不明白我的问题。请给我详细说明参考变量如何在函数中传递。我想补充的另一件事是这个。是否会在内存中创建引用变量
#include<iostream>
using namespace std;
int fun(int &x)
{
return x;
}
int main()
{
int x=10;
cout << fun(x);
return 0;
}
解决方案
x
您的函数读取&
并返回其值的副本,因此没有问题
推荐阅读
- php - Laravel 在需要忽略的多行更新方法中验证数组
- jenkins - 将 Telegram 机器人与詹金斯集成
- python - 位置权限弹出窗口
- linux - glibc 2.14 install error selinux.c: error: libaudit.h no such file or directory
- python - Groupby 和追加列表和字符串
- javascript - “异步”Azure Function App 未按预期等待
- magento2 - 使用composer成功安装magento后,当我在magento中点击admin的url时什么也没有
- reactjs - 如何使用带有反应钩子的静态变量
- wix - WiX 工具集扩展:如何使自定义操作的顺序可配置?
- c# - 将一个数字拆分为多个数字