引用 reference

C语言指针,在C++中也可以用

#include <iostream>
using namespace std;

int main) {
    
    int age = 10;

    int *p = &age;
    *p = 20;

    cout << *p << endl;

    getchar);
    return 0;
}

C++中,引用(reference)和指针功能类似。指针是*,引用是&

引用在定义时必须初始化,一旦指向某个变量就不能再变。
引用存在的价值之一:比指针更安全、函数返回值可以被赋值

#include <iostream>
using namespace std;

int main) {
    
    int age = 10;

    int &refAge = age;    //相当于age的别名是refAge
    refAge = 20;

    cout << age << endl;

    getchar);
    return 0;
}

引用的本质就是指针,直接看汇编,两者汇编一模一样

引用就是指针,编译器削弱了它的功能,不能乱指。

#include <iostream>
using namespace std;

int main) {
    
    int age = 10;

    int *p = &age;    //*p就是age的别名
    *p = 20;

    int &ref = age;    //ref就是age的别名
    ref = 40;

    cout << age << endl;

    getchar);
    return 0;
}

有的系统存在ASUR,让程序起始地址随机

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注