c++随笔——17.10.21(二)
来源:互联网 发布:发布淘宝优惠券的工作 编辑:程序博客网 时间:2024/06/07 02:18
17.10.20
标准模板库(Standard Template Library)的组成:
一.容器:vector ,list,set,map等类
容器又分为:
1. 序列式容器,可进行迭代操作
2. 关联式容器,可用来进行快速查找操作。
二.用以操作这些容器类的所谓泛型算法:find(),sort(),replace(),merge()
所谓泛型,是因为其所提供的function和他们想要的操作元素类型无关,比如int,string
,double都无所谓,都可以进行操作,而且,对于是容器还是数组也一样。
下标操作符:
左操作数运算,接的是首地址,数组的a[1]的实质就是,a为首地址,[1]内是索引偏移量,
自动移位找到偏移的那个地址,并读出那个数,这就是下标操作符的作用。例如:
Cout<<a[3]; //输出3
a[]={...}
Ptr = a;
Cout<<*(ptr+3); //输出3
以上两个操作是相同的。
这里需要注意的是,假设ptr的物理地址是20H,加1后是不是就是21H了呢?
不是的,这里的加1是地址索引,而不是物理地址,物理地址是多少需要根据,
你的变量类型来确定的,比如,如果是int型的,在一般的操作系统环境中,
应该是4bit,所以为24H。
List容器
以一组指针相互链接,使用前向(forward)指针来寻址下一个元素(next),使用
后向(backward)指针来寻址上一个元素(preceding)。
那么,也就是说,指向容器的指针的算数运算是不适用于list的,因为它不是连续地
存储在一起的,而是它的元素之中本身就包含着索引上一个元素和下一个元素的指针。
17.10.21
指针的使用补充
在局部域中定义的一个指针ptr,该指针是在栈中定义的,没有指向,或者指向某个地方,但是指向也是栈,在程序结束的时候系统会自行回收,此时你不new你可以用这个指针干啥呢?你可以用它来指向一个已经明确的地址或者指针,然后操作该指针,就相当于操作指向的地方。然后另外一个用法就是new了,new一个空间是在堆上的,需要自己手动释放,不然会一直占用这个空间。
- c++随笔——17.10.21(二)
- 计算机考试C随笔二
- C++学习随笔(二)——引用
- IOS语言Object-c语言随笔(二)
- 随笔(二)
- 随笔(二)
- 随笔(二)
- 随笔(二)
- C++随笔(二)
- iOS随笔(二)
- Kaldi随笔(二)
- 顺心随笔(二)
- 项目随笔(二)
- C语言学习随笔(2)—— 学习目标
- c++随笔——17.10.21(一)
- dx10 学习随笔(二)
- spring随笔(二) AOP
- sql知识随笔(二)
- 中缀表达式
- 关于stata的运用
- 尚未安装.NET Framework 4.5.2,原因是:安装时发生严重错误
- 使Android支持html 的两个接口
- 数组与指针的区别与联系
- c++随笔——17.10.21(二)
- 浅谈视频监控行业编解码技术的发展与应用
- 安卓(JAVA)读取Mp3文件中的歌曲信息(及readLine()出现乱码问题的解决方法)
- char *string="xxxxxxxxx" 与 char string[]="xxxxx"的区别
- Oracle之分区表效率与普通表比较
- 电路分析-第四章 分解方法及单口网络
- Ubuntu为安装的软件添加启动图标
- 股票量化分析(11)——第二个策略(5日移动均线、双均线、MACD策略)
- 移动端1px边框的实现