c++primer 学习日记2 复合类型 引用与指针
来源:互联网 发布:淘宝商家怎么查看粉丝 编辑:程序博客网 时间:2024/05/21 09:16
本篇是反思后的第一篇日记,本系列,作为自己的c++primer的学习,c++的复习。
复合类型:引用,指针;
术语“引用(reference)”指左值引用;
引用即别名,例:
Int a=0;
Int &b=a;
引用与对象绑定,对引用的操作即为对对象的操作;
因为引用不是对象,不能定义引用的引用与引用的指针;
引用应与绑定对象严格匹配,且不能绑定字面值与某个表达式的计算结果;
“指针”与引用皆实现了对对象的间接访问,但其本身也是一个对象,允许对其赋值与拷贝;
指针与其对象类型也需严格匹配;
指针的值(即地址)应属于下列4种状态:
1 指向一个对象;
2指向紧邻对象的下一个位置;
3 空指针,不指向任何一个位置;
4无效指针,上述三种情况之外的指针;
获取地址 取地址符&;
如果指针指向一个对象,允许使用解引用符*来访问该对象;
例:
Int ival=42;
Int*p=&ival;
Cout<<*p;
对*p赋值实际上是为p所指的对象赋值;
声明语句中 *代表指针,&代表引。表达式中*代表解引用,,&代表取地址。
空指针不指向任何对象
生成空指针方法:
Int *p1=nullptr;
Int*p2=0;
Int*p3=NULL;
其中nullptr是c++11新引入方法,是一种特殊类型的字面值,可以被转换为任意其他的指针类型。
int变量直接赋给指针是错误的操作,即便其值为零。
引用与指针同为间接访问对象,其区别在与引用绑定与一个对象,其本身不是对象。
赋值改变的永远是等号左侧的对象,等号左侧为p时,改变的是指针指向,左侧为p*时,改变的是p指向的对象。
Void指针用于存放各种对象地址,
例,int a=3,*b=&a;void*c=&a;c=b;
- c++primer 学习日记2 复合类型 引用与指针
- 《c++primer笔记》复合类型--引用
- c++primer plus复合类型之指针2
- c++primer plus复合类型之指针
- c++primer学习笔记-----2.3复合类型
- c++ primer学习-引用类型和指针
- C++Primer之复合类型
- C++primer2.3 复合类型指针和引用
- c++primer学习记录(2)——引用,指针
- C++Primer学习概要:引用和指针
- C++Primer学习之一引用和指针
- C++ primer:引用是复合类型?
- C++ Primer Plus学习:第四章 复合类型(2)
- c++ primer学习笔记5_复合类型续2
- C++Primer读书笔记(2)-引用和类型
- 复合类型——引用、指针
- 复合类型——指针和引用
- C++ 复合类型-指向指针的引用
- 后台管理UI的选择
- php连接数据库类
- PhotoShop CC 2017软件整体界面及常规设置
- python文件和目录操作方法大全(含实例)
- 史上最全最强SpringMVC详细示例实战教程
- c++primer 学习日记2 复合类型 引用与指针
- 自定义View之Paint
- JavaScript判断一个页面是否是使用微信打开,并调跳转
- DFA应用——判断合法数字
- Java静态方法为什么不能访问非静态方法
- ElasticSearch5.x踩坑记录(二):linux下es5.6.3、head、ik安装
- 软件工程(C编码实践篇)学习总结
- sql中查询一张表显示多列自己需要的数据
- UIAutomator2.0详解(UIDevice篇----触屏操作2)