常引用(const type&)的特性及引用的本质
来源:互联网 发布:docker 阿里云 编辑:程序博客网 时间:2024/05/16 10:26
常引用(const type&)的特性及引用的本质
#include "stdafx.h"#include <iostream>using namespace std;#if 0----常引用const 引用有较多使用。它可以防止对象的值被随意修改。因而具有一些特性。(1)const 对象的引用必须是 const 的,将普通引用绑定到 const 对象是不合法的。既然对象是 const 的,表示不能被修改。引用当然也不能修改,必须使用 const 引用。所以 const int a = 1; int &b = a; 这种写法是不合法的,编译通不过。(2)const 引用可使用相关类型的对象(常量、非同类型的变量或表达式)初始化。这个是 const 引用与普通引用最大的区别。const int &a = 2; 是合法的。double a = 3.14; const int &b = a; 也是合法的#endifstruct T{int* p;};struct TT{double &a;};int _tmain(int argc, _TCHAR* argv[]){double val = 3.14;double & ref2 = val;//正常使用const int &ref = val; //新开辟了一个未命名的空间,以只读的方式引用 数值固定 不能更改 //也就是 ref是这个未命名空间的引用 储存的只是相应数值 与val再无任何关系cout << ref << " " << ref2 <<"--"<<val<< endl; //3 3.14val = 4.14; //val改变不会影响到未命名空间的值cout << ref << " " << ref2 <<"--"<<val<< endl; //3 4.14cout << sizeof(T) << endl;//4cout << sizeof(TT) << endl;// 大小也为4 引用的本质就是指针int a;int &ra = a;ra = 200;//ra可以改变数据 int b;//&ra = b; ra不能再次指向另一个变量//所以引用的本质是常指针类型 type* const p//之所以const只修饰p代表 它所指向的地址是固定的 //而*p也就是代表着内容(变量的值)是可以更改的//这符合引用的性质//引用的本质是,是对常指针 type * const p 的再次包装。return 0;}
阅读全文
0 0
- 常引用(const type&)的特性及引用的本质
- 常引用,const CString&,引用的效率
- 深刻理解引用、const引用、右值引用的本质
- [ 转]常引用,const CString&,引用的效率
- 常引用,const引用的案例,以及常引用作函数参数
- const常引用
- 引用的本质图解
- 引用的本质是什么
- c++引用的本质
- 引用的本质
- 引用的本质
- C++引用的本质
- 引用的本质
- 引用的本质是什么?
- 引用的本质是什么?
- 引用的本质
- 引用的本质剖析
- 引用的本质
- 为什么只有代币最火?老司机深入解读区块链落地的理念与模式
- mysql 中删除多张表
- MATLAB数字图像处理(一)直方图均衡化
- 1023. 组个最小数 (20) PAT乙级真题
- Simple Queue
- 常引用(const type&)的特性及引用的本质
- 【Scikit-Learn 中文文档】模型选择:选择估计量及其参数
- CSS设置下划线与文字间距距离
- .NET调用Java写的WebServices(可能会碰到的问题)
- 用ffmpeg 把mp4文件转为ts文件并生成m3u8列表
- Android_注解与泛型
- Prism框架(二)——Prism应用程序初始化
- 手机端的下拉刷新和上拉加载
- 图解TCP/IP 读后感