转http://www.cnblogs.com/netqer/archive/2008/10/20/1315386.html
int i;
int *a = &i;//这里a是一个指针,它指向变量i
int &b = i;//这里b是一个引用,它是变量i的引用,引用是什么?它的本质是什么?下面会具体讲述
int * &c = a;//这里c是一个引用,它是指针a的引用
int & *d;//这里d是一个指针,它指向引用,但引用不是实体,所以这是错误的
以下代码功能一样:
void function(int *a)
{
*a = 100;
}
int main()
{
int x=200;
int *b = &x;
function(b);
return(0);
}
void function(int &a)
{
a = 100;
}
int main()
{
int x = 200;
function(x);
return(0);
}
以上两段程序完成的功能是一样的。