指针、引用、const常量三者之间的关系
来源:互联网 发布:小码哥java大神班视频 编辑:程序博客网 时间:2024/05/24 23:13
一、说明
指针和引用均实现对其他对象的间接访问。
1、指针:存放另一个对象的地址。
1)指针本身就是一个对象,允许对指针赋值和拷贝,而且指针可以先后指向几个不同的对象。
2)指针可以在定义时不赋初值。
2、引用:为一个已经存在的对象所起的另外一个名字。
1)定义了一个引用后,必须对其初始化(引用的初始值必须是一个对象)。对其进行的所有操作都是在与之绑定的对象上进行。
2)为引用赋值,实际上是把值赋给了与引用绑定的对象。
3)引用不是对象,所以不能定义引用的引用。
二、指针、引用、const常量之间的关系
1、对指针的引用
int i = 42;int *p;int *&r = p; //r:对指针p的引用r = &i; //r引用了一个指针,为r赋值&i就是令p指向i*r = 0; //解引用r得到i,即p指向的对象,将i值改为0
2、对const的引用(常量引用)
int i = 42;int &r1 = i;//引用r1绑定对象iconst int &r2 = i;//r2绑定对象i,但不能通过r2修改i的值r1 = 0;//i值修改为0//r2 = 0;//错误
3、const和指针
1)常量指针:指针本身是常量,其值(地址)不可改变。格式:*const p
int a = 10;int b = 20;int *const p = &a;//p一直指向a*p = b; //正确:a的值改变为20p = &b; //错误:p的值(地址)不可改变const double pi = 3.1415;const double *const pip = π //pip是指向常量对象的常量指针
2)指向常量的指针:存放某个常量对象的地址,不能改变所指对象的值。
int a = 10;int b = 20;const int *p = &a;p = &b; //正确:p的值可改变*p = b; //错误:不能改变所指对象的值
1 0
- 指针、引用、const常量三者之间的关系
- C++ - const常量与指针和引用之间的关系
- C++ const限定符之顶层const & 底层const & 指针 & 引用之间的关系
- 关于const引用、常量指针、指针常量的一些知识
- 引用&指针和引用&const的关系
- 指针,引用之间的关系
- const 限定符 extern 对常量的引用 指向常量的指针 常量指针
- C++关于指针、const、引用三者的体会
- 常量指针 const void * 指针常量 void* const 指向常量的指针常量 const void* const
- 引用,指针,常量引用,常量指针,指针常量的区别
- 关于const常量、const指针以及const引用
- 函数 数组 指针 三者之间的关系
- const、引用、函数调用等之间的关系
- const常量引用的使用方法
- C++中引用、指针与const之间的爱恨情愁
- C++中引用、指针与const之间的爱恨情愁
- C++中引用、指针与const之间的爱恨情愁
- const指针的引用
- 视频解析记录
- 一天搞定jQuery(四)——使用jQuery完成省市二级联动的效果
- 关键字 volatile
- JDBC连接数据库
- 通过FileInputStream和FileOutputStream复制图片等非文本文件
- 指针、引用、const常量三者之间的关系
- C# 中的委托和事件
- myeclipse中使用hibernate的异常(hibernate5.1)
- 开发企业微信之接收消息服务器配置
- Struts2值栈ValueStack介绍
- ddd
- 华为内部如何实施微服务架构?基本就靠这5大原则
- POJ 1080 Human Gene Functions 笔记
- 关于电流检测中分流电阻(Rshunt)选型应考虑的问题