C++primer 第十、十一、十二章

第十章 泛型算法

建议有需要再仔细读这部分,初次学习,相当于只了解了一些概念

泛型算法:标准库定义的可用于多种容器的通用算法,因为传入的是迭代器,所以不依赖于容器的类型,但依赖于具体的元素类型的操作。并且,泛型算法并不会改变底层容器的大小,只会保存和移动元素,不会直接添加和删除。
在这里插入图片描述

谓词
在这里插入图片描述

在这里插入图片描述

lamda表达式:一般的谓词是一元谓词或二元谓词,如果想传递更多的参数,则没有办法。这时,可以用lamda表达式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

其他迭代器:有需要再去细读这部分吧
插入迭代器,流迭代器,反向迭代器,移动迭代器 在这里插入图片描述

第十一章 关联容器

https://www.cnblogs.com/bakari/p/3332230.html
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

find函数的参数是关键字,返回的是一个迭代器,对有序容器,关键字必须定义元素比较的方法。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

C++primer说set中的元素是只读的,不可以修改:但我看到下面这篇帖子说: gcc是只读不可修改的,
而微软的VC++6.0和VS2005的是可以修改的。
https://blog.csdn.net/stpeace/article/details/42378103

insert和erase的返回值:需要时再查询

map的下标操作:如果不想在k不存在时插入元素,则可以使用find()
在这里插入图片描述
map的下标操作返回类型:find()返回的是value_type, 即是pair
在这里插入图片描述
在这里插入图片描述

无序容器: 在这里插入图片描述
在这里插入图片描述
无序容器的使用:
在这里插入图片描述

在这里插入图片描述

疑问:关键字不可重复的map和set是如何去重的?一定需要key的元素类型有==判断吗

第十二章 动态内存

https://www.cnblogs.com/Przz/p/6416042.html在这里插入图片描述

new与构造函数 不带()是默认初始化
在这里插入图片描述
带()是值初始化
在这里插入图片描述

const对象的特点就是必须初始化,而new分配的对象有默认初始化和值初始化两种,对于内置类型和组合类型的new默认初始化,其值是未定义的,所以不能作为const对象的初始值,而必须使用new值初始化方式;对于有默认构造函数的类类型,无论是new的默认初始化还是值初始化,其值都是确定的,所以可以作为const对象的初始值。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

shared_ptr和new的结合使用
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值