本文摘自php中文网,作者(*-*)浩,侵删。

包括 C、C++ 在内的一些语言支持指针。其他语言包括 C++、Java、Python、Ruby、Perl 和 PHP 都支持引用。从表面上看,引用和指针非常相似,它们都用来让一个变量提供对另一个变量的访问。 (推荐学习:go)
由于两者都提供了许多相同的功能,所以常常不清楚它们各自的内部机制有什么不同。在本文中,我将说明指针和引用之间的区别。
为什么这很重要
指针是 Go 语言的核心。大多数程序员都是在上面提到的一种语言的基础上学习 Go 的。因此,理解指针和引用之间的区别对于理解 Go 至关重要。
即使你使用过具有指针的语言,Go 对指针的实现也不同于 C 和 C++,因为它保留了引用的一些优秀属性,同时保留了指针的功能。
本文的其余部分旨在广泛地讨论引用的概念,而不是具体的实现。我们将使用 Go 作为指针的参考实现。
有什么不同?
指针变量存储的是另一个变量的地址。
引用变量指向另外一个变量。
为证明我们的观点,用 C++ 举个例子,它同时支持指针和引用。
相关阅读 >>
更多相关阅读请进入《golang》频道 >>

Go语言101
一个与时俱进的Go编程知识库。