C++疑难问题:引用
来源:互联网 发布:网络赚钱之道 编辑:程序博客网 时间:2024/04/29 15:08
1. 引用变量
引用变量在创建时必须初始化,通常,引用是在声明时分配的,不过引用数据成员可以在包含该成员的类的初始化列表中进行初始化。
int x = 3;int& xRef = x;int& emptyRef; // does not complie
除非引用指向一个const值,否则不能创建指向未命名值的引用。
int& unnameRef = 5; // does not complieconst int& unnameRef = 5; // Works!
2. 修改引用:引用总是指向初始化时指定的那个变量,一旦创建引用就不能再修改。
int x = 3, y = 4;int& xRef = x;xRef = y; // change value of x to 4xRef = &y; // does not compileint& yRef = y;yRef = xRef; // just assigns values
3. 指针引用和引用指针
可以创建指向任何类型的引用,包括指针类型。
int* intPtr;int*& ptrRef = intPtr;ptrRef = new int;*ptrRef = 5;
不能声明指向引用的引用,也不能声明引用指针(指向引用的指针)
int x = 3;int& xRef = x;int&& xDoubleRef = xRef; // does not complieint&* refPtr = &xRef; // does not complie4. 引用参数
void swap(int& a, int& b){ int tmp = a; a = b; b = tmp;}int main(){ int x = 5, y = 6; swap(x, y); // Works! swap(5, 6); // Does not complie return 0;}5. 引用返回类型:从函数或方法中可以返回引用。但要避免返回变量(比如堆栈上自动分配的变量)的引用,因为函数结束时会撤销这些变量。
- C++疑难问题:引用
- 疑难问题
- 疑难问题
- C++/VC++编程的疑难问题及解答
- C++/VC++编程的疑难问题及解答
- C++/VC++编程的疑难问题及解答
- 实例解析 C/C++ 疑难问题(一)
- 实例解析C/C++疑难问题(二)
- VS2005(c#)项目调试疑难问题解决方法锦集
- UI 疑难问题
- 疑难问题备忘
- JavaScript----疑难问题
- 疑难问题杂项
- CSS----疑难问题
- 疑难问题记载
- 疑难问题单
- 疑难问题记录
- android疑难问题
- 删除android缓存
- 透明图片的处理问题
- 用度娘和google的心得
- Ubuntu安装dos2unix命令
- C++的内联函数
- C++疑难问题:引用
- 学习C++的50条建议
- 【MM】采购退货的处理办法
- 快速傅氏变换之旅(二) 七种FFT算法速度比较(含代码)
- android Dialog去掉标题栏 和边框
- ThreadLocal对Connection封装的实现
- usb设备的probe全过程
- 应用根轨迹分析系统性能
- TinyXML Tutorial 中文指南