引用相比于于指针各有优点:一、引用变量它不能改变自身所引用的地址空间,而指针变量可以,那么就很可能出现一些因为不小心的修改而导致错误的结果。二、在作为函数参数方面,引用作为参数,你调用的时候不需要对变量取地址值,这样看起来比较直观,而且方便,如果是指针变量作为参数,那么你有时候会不明白这个函数到底是对指针进行运算,还是对指针指向的变量空间进行运算,而且还要取地址操作。三、不过有时候指针还是比引用好用的多,不如你需要快捷修改指向位置,那么指针是很快的,有时候你就是要对地址(就是直接对内存)操作,那么指针是首选啦。 下面是一个例子希望对你有用: //PointAndRef.cpp#include<iostream.h> //cout<< void pointFun(int *a,int *b) //指针作为参数{ int temp; temp=*a; *a = *b; *b=temp; }void refFun(int &a,int &b) //引用作为参数 { int temp; temp=a; a=b; b=temp; } void main() { int a,b; a=1,b=2; pointFun(&a,&b); //指针调用需要取地址值。 cout<<"a="<<a<<"b="<<b<<endl; int c,d; c=3,d=4; refFun(c,d); //引用调用和正常变量调用一样。 cout<<"c="<<c<<"d="<<d<<endl; }
时间: 2024-10-13 12:58:19