定义
与指针相似的是,引用将存储位于内存中其他位置的对象的地址。 与指针不同的是,初始化之后的引用无法引用不同的对象或设置为 null。
声明方式
# 引用、指针和对象可以一起声明
int &ref, *ptr, k;
引用保留对象的地址,但语法行为与对象一样。
// references.cpp
#include <stdio.h>
struct S {
short i;
};
int main() {
S s; // Declare the object.
S& SRef = s; // Declare and initialize the reference.
s.i = 3;
printf_s("%d\n", s.i);
printf_s("%d\n", SRef.i);
SRef.i = 4;
printf_s("%d\n", s.i);
printf_s("%d\n", SRef.i);
}
引用与被引用的变量指向同一地址因此,改变任意变量,会引起整体变量的改变
// reference_declarator.cpp
// compile with: /EHsc
// Demonstrates the reference declarator.
#include <iostream>
using name