在C 中返回参考有效期参考是否有效

Is it valid to return a reference as a reference valid in C++

本文关键字:参考 有效期 有效 是否 返回      更新时间:2023-10-16
#include <iostream>
using namespace std;
int& fun1(int& ref)
{
  ref = 30;
  return ref;
}
int main()
{
  int i = 10;
  i = fun1(i);
  cout << "Value of i:" << i << endl;
  return 0;
}

输出:I:30

的值

返回作为访问作为函数返回相同引用的访问的函数参数是否有效?根据我在Fun1中的理解(int&amp; ref(,将在堆栈中有一个自己的内存位置,并且返回ref的地址无效。

引用以各种方式行动,就好像它们是原始对象一样。这意味着获取参考的地址给出原始对象的地址并参考引用给出对原始对象的引用。

尽管有指针的指针,但没有参考的参考。

请注意i = fun1(i);中的分配是多余的。在这种情况下,i已经是30。您只需致电fun1(i);

是的,很好。重要的是,指称人的寿命足够长。