引用和指针
2025/7/18小于 1 分钟
引用和指针
传递引用
C++允许把变量引用传递给函数的参数,这样做的目的是:
- 可以在函数内改变参数的值
- 为了性能考虑,避免一次参数的数据复制
void swap_num(int &i, int &j) {
int temp = i;
i = j;
j = temp;
}
int main() {
int a = 100;
int b = 200;
swap_num(a, b);
std::cout << "A is " << a << "\n";
std::cout << "B is " << b << "\n";
}
指针
C++通过*来创建指针变量,用来保存一些内存的地址信息
int* pointer = &gum;
引用
C++通过&来创建引用变量,引用变量是真实变量的别名,引用变量改变,原变量跟着改变。
int &sonny = songqiao;
内存地址
C++可以通过&操作符来获得一个变量的地址
std::cout << &porcupine_count << "\n";
解析地址
C++可以通过*操作符来获得一个内存地址中保存的内容
int gum = 3; //定义一个变量
int* pointer = &gum; //把变量的地址保存给指针变量pointer
int dereference = *pointer; //从指针变量中取出对应的值,这时候derefence是3