【C++ Primer学习笔记】引用返回左值
2012-03-08 10:09
176 查看
返回引用的函数返回一个左值。因此,这样的函数可用于任何要求使用左值的地方:
给函数返回值赋值可能令人惊讶,由于函数返回的是一个引用,因此这是正确的,该引用是被返回元素的同义词。
如果不希望引用返回值被修改,返回值应该声明为const:
const char&get_val(...
又如,下面程序段将数组aiTemp的各元素赋值为0:
char &get_val(string &strInput, string::size_type ix) { return strInput[ix]; } int main() { string strTemp("a value"); cout << strTemp << endl; //prints "a value" get_val(strTemp, 0) = 'A'; cout << strTemp << endl; //prints "A value" return 0; }
给函数返回值赋值可能令人惊讶,由于函数返回的是一个引用,因此这是正确的,该引用是被返回元素的同义词。
如果不希望引用返回值被修改,返回值应该声明为const:
const char&get_val(...
又如,下面程序段将数组aiTemp的各元素赋值为0:
int &get(int *piArray, int index) { return piArray[index]; } int main() { int aiTemp[10]; for (int i = 0; i != 10; ++i) { get(aiTemp, i) = 0; } return 0; }
相关文章推荐
- c++学习笔记之函数引用返回
- Effective C++ 学习笔记:让operator=返回*this的引用
- 《C++ Primer》学习 之 返回数组的引用(返回数组的指针,方法与之相同)
- c++学习笔记(返回引用的函数)
- c++ primer 学习笔记,关于引用等等
- Effective C# 学习笔记(二十六)防止返回类内部的对象引用
- Effective C++学习笔记:必须返回一个对象时不要试图返回一个引用
- const 引用——c++ primer 学习笔记
- Effective c++学习笔记——条款10:令operator=返回一个*this的引用
- C++ Primer 学习笔记11 函数(函数调用、引用形参、非引用形参)
- C++ Primer学习笔记:引用的使用注意事项
- Effective c++学习笔记——条款10:令operator=返回一个*this的引用
- Effective C++ 学习笔记:让operator=返回*this的引用
- Effective C++ 学习笔记:让operator=返回*this的引用
- c++ primer 学习笔记之右值引用
- php引用返回function & fun();学习笔记
- c++ primer 第五版学习笔记-第6章-返回数组指针的函数和函数指针的数组
- javascript学习笔记 - 引用类型 Function
- C++ Primer 学习笔记_34_STL实践与分析(8) --引言、pair类型、关联容器
- 学习C++要做笔记1(引用)