gpt4 book ai didi

c++ - 在 C++ 中,函数返回类型后的 & 是什么意思?

转载 作者:IT老高 更新时间:2023-10-28 12:32:45 25 4
gpt4 key购买 nike

在这样的 C++ 函数中:

int& getNumber();

& 是什么意思?是否不同于:

int getNumber();

最佳答案

不一样。

int g_test = 0;

int& getNumberReference()
{
return g_test;
}

int getNumberValue()
{
return g_test;
}

int main()
{
int& n = getNumberReference();
int m = getNumberValue();
n = 10;
cout << g_test << endl; // prints 10
g_test = 0;
m = 10;
cout << g_test << endl; // prints 0
return 0;
}

getNumberReference() 返回一个引用,在底层它就像一个指向整数变量的指针。应用于引用的任何更改都将应用于返回的变量。

getNumberReference() 也是一个左值,因此可以这样使用:

getNumberReference() = 10;

关于c++ - 在 C++ 中,函数返回类型后的 & 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2379859/

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