c++笔记2

1,vector,用的多,存的是值

using Group = std::vector<float>; c++11定义

typedef std::vector<float> Group ;c98定义


 

2 deque  用的多,存的是值

 

 

 3,list ,实际用的少,双向链表,存的是指针

 

 

4,forward_list ,单项链表,存的是指针

 

 

 

 

 注意:值,指针,sharepointer weakpointer 时间对比

 5,set,存的是值,实际上用存的是指针,或者是基本类型,用的少

 

 

 自定义类,放入set

 

结果:

自身find,和std的find不一样:自身find根据传入的比较参数查找,std::find根据子定义的重载==来查找

 6,map,用的最多

insert 和emplace都是插入,推荐emplace

 

 下图,访问元素    [],要求访问的map不能是const,因为查找的时候可能会改变

下图,访问元素    at,没那么多要求,可以是正常的,可以是const的map

真正生产时推荐下图


上面的代码简化,下图

7,unorderer ,没有顺序要求用这个

备注,下图,模板类的特化,用于key为自定义类,  需要定义hash算法,里面有返回key的方法

猜你喜欢

转载自blog.csdn.net/yuhan61659/article/details/81624898