引用

来源:互联网 发布:照片 转换绘画 软件 编辑:程序博客网 时间:2024/05/07 11:11

引用及其声明

1.别名

2.声明时初始化

3.别名专享

4.引用不占空间

5.不能建立数组引用

 

引用作为函数参数有哪些特点

1.与传指针效果相同,但不用给形参分配存储单元,可读性强

2.与传一般变量和对象相比,不用给形参分配存储单元或调用拷贝构造函数

 

在什么时候需要使用常引用

既要利用引用提高程序的效率,又要保护传递给函数的数据不在函数中被改变.

常引用声明方式:const 类型标识符 &引用名=目标变量名;

string foo( );
void bar(string & s);

那么下面的表达式将是非法的:

bar(foo( ));
bar("hello world");

原因在于foo( )"hello world"串都会产生一个临时对象,而在C++中,这些临时对象都是const类型的。因此上面的表达式就是试图将一个const类型的对象转换为非const类型,这是非法的。

引用型参数应该在能被定义为const的情况下,尽量定义为const