C++中一种新的导出型数据类型———引用(reference)。
引用定义的格式为:
类型&引用变量名=已定义过的变量名;
#include<iostream>
using namespace std;
void swap(double & d1,double & d2){
double temp;
temp=d1 ;
d1=d2 ;
d2=temp ;
}
int main(void){
double x, y;
cout<<"请输入x和y的值:"<<'\n';
cin>>x>>y;
cout<<"x="<<x<<'\t'<<"y="<<y<<'\n';
swap(x,y);
cout<<"x="<<x<<'\t'<<"y="<<y<<'\n';
return 0;
}
在程序执行时,若输入的x,y的值分别为12和13,则输出的x,y的值分别为13和12,虽然从逻辑上讲d1和d2为x和y的别名,但在C++编译器中进行处理时,仍给d1和d2分配了一个内存空间,但存放的分别是x和y的内存地址。
引用可作为函数的返回值。一般函数返回一个值时,要生成一个临时变量作为返回值的副本,而引用作为返回值时,不生成值的副本。