STL学习笔记--容器


c++:c+类+模板
(类:面向对象编程思想 模板:思想基础)

STL简介

1.要求:函数的使用
2.内容

2.1容器
可是随意使用的数据结构,已封装好
每种结构可以定义任意类型
2.2 算法
已经写好的算法(eg:排序,交换…)
适用于不同的容器
2.3 迭代器
中间件:识别容器类型

容器

本身是类,创建对象然后调用成员函数

学习方法

  1. 会使用类内的函数
  2. 学完STL并有整体认识,可以很好使用后:可研究 “STL源码”
    提高个人编码能力、编码规范
    推荐:侯捷《STL源码剖析》
  3. 求质不求速,要学习过程中延伸的东西 eg:英语

查找

  1. MSDN(全):容器名全部是小写
  2. 工具书(常用的函数)
  3. 百度

转定义 -->MSDN

顺序容器

string容器 (动态数组)

c++:Cstring,Qstring
string:类 ,string只针对字符串

  • char*(对象) + 功能(函数)
    大小:new 动态分配空间(new=实际+1 多一位存放‘/0’)

头文件:string

  • 区分string和string.h
    -string:类的头文件
    -string.h:c语言中字符串操作头文件

数组

1.vector: 向量(动态数组)

分配原理和string一样
会申请一个连续空间,空间不够时申请另一个更大的空间,同时迭代器失效

头文件:vector

2.array:固定数组

vs2012、2013、2015 支持
vs2005 暂不支持

3.valarry

用于数学计算,封装了cmath.h(数学的计算公式)

链表

1. list

双向链表

2. forward_lis(更快)

向前链表–单链表(只提供‘前’的操作:头添加,头删除)
操作都在链表头
Visual Studio2005没有这个,2012就有了,C++11标准

函数

size():string字符个数,vector元素个数,list节点个数

vc6.0 创建工程:

win32 console Application
添加 c++ source file
先编译,再调试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值