float & vector::elem(int i)中的&是什么意思

来源:百度知道 编辑:UC知道 时间:2024/05/22 16:31:52
&是什么意思?

那一行又是什么意思

& 在这里代表返回一个引用。

引用是C++中的概念,初学者容易把引用和指针混淆一起。一下程序中,n是m的一个引用(reference),m是被引用物(referent)。
int m;
int &n = m;
n相当于m的别名(绰号),对n的任何操作就是对m的操作。例如有人名叫王小毛,他的绰号是“三毛”。说“三毛”怎么怎么的,其实就是对王小毛说三道四。所以n既不是m的拷贝,也不是指向m的指针,其实n就是m它自己。

引用的一些规则如下:

(1)引用被创建的同时必须被初始化(指针则可以在任何时候被初始化)。

(2)不能有NULL引用,引用必须与合法的存储单元关联(指针则可以是NULL)。

(3)一旦引用被初始化,就不能改变引用的关系(指针则可以随时改变所指的对象)。
--------------------这一行的意思就是---------------------

对于vector类中的elem方法进行定义,这个方法接收一个int 参数。返回一个float型变量的引用。

关于传值和传引用还可以看以下参考资料:
http://kooyee.javaeye.com/blog/350013

float 是保留字,不可能是变量名,所以 float & vector。。。 不会是表达式。
(如果是表达式, & 是 按位与运算符)

所以它是英文句子。 & 是 and , 中文意思是 和,同,与 的意思。