引用运算符&

引用就是给一个已经定义的变量取一个别名,例如

int main(void)
{
    int a = 5;
    int& b = a;
    cout << b;
    return 0;
}

输出为:5
使用&运算符,给a一个外号b,就可以把b当作a来使用了,a和b在内存上占用同一块区域,引用并不会创建新的内存空间。就像使用指针那样。上面的操作等价于

int main(void)
{
    int a = 5;
    int* b = &a;
    cout <<* b;
    return 0;
}

创建一个指针b,指向a的地址,然后把 b当作变量a来用。

引用已存在变量的方法

除了上面的例子中的用等于号外,还有其他方法

int main(void)
{
    int a = 5;
    int& b(a);
    cout << b;
    return 0;
}

如上所示,使用括号也可以使b引用a。

引用在函数之间参数传递的作用

见:在一个函数中改变另一个函数的值

用动态分配内存空间初始化引用变量

int main(void)
{
    int& a = *new int;
    a = 5;
    cout << a;
    return 0;
}

这就相当于给新开辟的内存空间取一个别名。


乔宕一
1 声望0 粉丝