c++对那些类型的数据不能使用引用

如题所述

字面值不能使用引用 如: 10 , "world" 等,数组也不能引用。

数组里面的元素是不能的

int a[5]={0};

int (&b)[5] = a; //必须带着括号,表明b是a的引用,即a和b的数组首地址是一样的,但去掉括号,int &b[5] = a;就是错误的,即不能创建一个 ”元素都是引用“ 的数组;

其实可以这样理解:数组本身是地址连续的,指明了b是a的引用后(int (&b)[5] = a; ),b就是a的那块地址空间,里面的元素地址也就相同了。

扩展资料:

一个数组中的所有元素具有相同的数据类型(在C、C++、Java、pascal中都这样。但也并非所有涉及数组的地方都这样,比如在Visual Foxpro中的数组就并没这样的要求)。当然,当数据类型为 Variant 时,各个元素能够包含不同种类的数据(对象、字符串、数值等等)。可以声明任何基本数据类型的数组,包括用户自定义类型和对象变量。

参考资料来源:百度百科-数组

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-25
字面值不能使用引用 如: 10 , "world" 等
数组也不能引用
第2个回答  2012-11-24
考虑了半天,实在是想不到哪个数据类型不能被引用。
常量或者是不可左值的表达式,也可以用常量引用的啊。
应该是都可以的吧!本回答被提问者和网友采纳
第3个回答  2012-11-24
应该是数组吧