C++的入门级问题

来源:百度知道 编辑:UC知道 时间:2024/05/11 05:07:45
#include<iostream.h>
int A[10];
int &array(int i);
void main()
{
int i,number;
A[0]=0;
A[1]=1;
cout<<"Input number:";
cin>>number;
for(i=2;i<number;i++)
{
//函数 array(int i)的调用被赋值,即给该函数的返回值赋值
array(i)=array(i-2)+array(i-1);
cout<<"arrayy("<<i<<")="<<array(i)<<endl;
}
}
int & array(int i)
{return A[i];}
程序里面int &array(int i)
里面&是干什么用的??什么意思?

int &array(int i); //返回值引用的函数
一般函数的返回值要建立临时变量,即用来拷贝副本.具体实现是:先将返回表达式的值传递给临时变量,返回主函数后,再将临时变量的值传递给接收函数返回值的变量.
但返回引用时,不产生副本,而是将其返回值直接传递给接收函数返回值的变量或对象.

符号&是说明符.

例如:
main()
{
int a=10;
int &ra=a;
cout<<ra<<endl;
}
输出结果是10.
此处&ra 是a 的别名.