常引用

来源:互联网 发布:创业软件怎么样 编辑:程序博客网 时间:2024/04/23 21:36
11在什么时候需要使用“常引用”?
如果既要利用引用提高程序的效率,又要保护传递给函数的数据不在函数中被改变, 就
应使用常引用。常引用声明方式:
const 类型标识符 &引用名=目标变量名;

例 1
int a ;const int &ra=a;ra=1; //错误a=1; //正确



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


那么下面的表达式将是非法的:
bar(foo( ));bar("hello world");


原因在于 foo( )和"hello world"串都会产生一个临时对象, 而在 C++中, 这些临时对象都
是 const 类型的。因此上面的表达式就是试图将一个 const 类型的对象转换为非 const 类型 ,
这是非法的。引用型参数应该在能被定义为 const 的情况下,尽量定义为 const 。
0 0