C++复合类型
来源:互联网 发布:奥斯曼土耳其知乎 编辑:程序博客网 时间:2024/05/18 02:56
复合类型在C++里有好几种,在这里主要介绍两种:引用和指针
引用:是C++11中新增加的一种。用来为对象起另外一个名字,引用类型引用另外一种类型。
定义引用时,程序会把引用以及它的初始值绑定在一起,而不是你将初始值拷贝给引用。
无法将引用重新绑定到另外一个对象,因此引用定义时必须要初始化。
int i = 1024;
int &a = i; //定义一个引用,a指向i
int &b; //错误,引用未被初始化
引用本身不是一个对象,所以不能定义引用的引用。
int &c = a; //错误
引用只能绑定在对象上,而不能与字面值或某个表达式的结果绑定在一起。
int &d = 10; //错误
为引用赋值:把值赋给了与引用绑定的对象。
获取引用的值:获取了与引用绑定对象的值。
指针:指针本身就是一个对象,允许对指针赋值和拷贝,而且在指针的生命周期内可以先后指向几个不同的对象。
指针无需在定义时赋初值。
int a = 42;
int *p = &a; //p存放变量a的地址,或者说p指向变量a的指针。
指针的值(地址)应属于下列四种状态之一:
1:指向一个对象。
2:指向紧邻对象所占空间的下一个位置。
3:空指针,意味着没有指向任何对象。
4:无效指针。
所有指针的类型都要和它所指的对象严格匹配。
int obj = 3;
double *q = &obj; //错误
注意:void*指针是一种特殊的指针类型,可用于存放任意对象(不分类型)的地址。但是作用有局限。
1:用作与别的指针比较。
2:作为函数的输入输出。
3:用作赋值给另外一个void*的指针。
不能直接操作void*指针所指的对象。因为并不知道这个对象是什么类型。
- C++:复合类型
- 【c++】复合类型
- C++Primer之复合类型
- 1.5 c++_复合类型
- 学习C++——复合类型
- [c++primeplus6th]-第4章.复合类型
- 《c++primer笔记》复合类型--引用
- c++primer笔记--2.3复合类型
- c++primer学习笔记-----2.3复合类型
- c++primer plus复合类型之枚举
- c++primer plus复合类型之指针
- 复合类型
- 复合类型
- 复合类型
- c语言中的类型转换与复合类型
- c语言中的类型转换与复合类型
- C语言学习笔记(4)类型转化,复合类型
- c++primerP29-----P51 基本内置类型,变量,复合类型
- 转换CSS中常用的颜色编码
- 文章标题 HDU 6165: FFF at Valentine(强连通分量缩点)
- 希尔排序
- mybatis 第一篇 一些报错
- Android多线程异步操作总结——Handler与AsyncTask
- C++复合类型
- 南海中学2017创新班考试总结
- 520. Detect Capital
- spark+kafka的Direct方式更新消费便宜量到zookeeper
- Spring MVC简介
- 多版本jdk配置on Mac
- Could not get unknown property 'ANDROID_BUILD_SDK_VERSION'
- react native 暂时遇到问题的解决办法(windows)(1)
- Android Activity的四种启动模式