引用和取地址符都是用符号“&”来表示,很容易分不清。但是,他们有以下的区别。 1.定义时,“=”左边的基本都是引用,“=“右边的是取地址 int x = 0 ; int& a = x ; int* p = &x; 2.引用必须要初始化,取地址不用。所以,当你看到一个单独的,未曾初始化的&x时,它一定是取地址。 3.引用类型相当于对原变量取了一个别名,在上面的例子中引用类型a,可以直接等同于x;