&在这种情况下试图理解" "的含义
void af(int& g)
{
    g++;
    cout<<g;
}
如果你调用这个函数并传递变量名 - 它将像普通一样运行void(int g).我知道,当你写&g这意味着你正在传递变量的地址g.但这个样本意味着什么?
Luc*_*ore 31
这意味着您通过引用传递变量.
事实上,在一个类型的声明中,它意味着引用,就像:
int x = 42;
int& y = x;
声明引用x,调用y.
ceg*_*ult 17
这&意味着函数接受变量的地址(或引用),而不是变量的值.
例如,请注意以下之间的区别:
void af(int& g)
{
    g++;
    cout<<g;
}
int main()
{
    int g = 123;
    cout << g;
    af(g);
    cout << g;
    return 0;
}
这个(没有&):
void af(int g)
{
    g++;
    cout<<g;
}
int main()
{
    int g = 123;
    cout << g;
    af(g);
    cout << g;
    return 0;
}
| 归档时间: | 
 | 
| 查看次数: | 154860 次 | 
| 最近记录: |