STL
的最主要的两个特点
:数据结构和算法的分离,非面向对象本质。访问对象是通过象指针一样的迭代器实现的;容器是象链表,矢量之类的数据结构,并按模板方式提供;算法是函数模板,用于操作容器中的数据。由于STL以模板为基础,所以能用于任何数据类型和结构。
我们常用到的STL容器
有vector、list、deque、map、multimap、set和multiset。其底层实现各不相同:
vector是动态数组。list是双向链表。deque为一段段连续定长数组拼接而成。map是一对一映射。multimap是一对多映射。set是没有重复元素的平衡二叉树。multiset中可以包含重复元素。
STL迭代器
可分为五种:
·
Input
iterators
提供对数据的只读访问。
·
Output
iterators
提供对数据的只写访问
·
Forward
iterators
提供读写操作,并能向前推进迭代器。
·
Bidirectional iterators
提供读写操作,并能向前和向后操作。
·
Random
access iterators
提供读写操作,并能在数据中随机移动。
STL提供很多使用的函数模板,在使用这些函数模板
时能够回调
函数,这里需要注意的就是模版函数可以接收的binary_function的返回值类型,以及回调函数的参数列表两个问题。除了回调函数,还可以传入函数对象
,这个对象重载operator方法即可。
分享到:
相关推荐
标准模板库STL介绍 标准模板库STL介绍 标准模板库STL介绍
标准模板库stl
标准模板库STL。标准模板库STL。标准模板库STL。标准模板库STL。
标准模板库STL的使用 实验报告.docx
Cpp标准模板库STL Cpp标准模板库STL Cpp标准模板库STL
STL 初学者 标准模板库STL 个人整理我几个常用东西
The Standard Template Library provides a set of well structured generic C++ components that work together in a seamless way. Special care has been taken to ensure that all the template algorithms work...
《标准模板库STL指南》
C++标准模板库STL介绍,想学好C++的很有必要看看这个东东……
用标准模板库STL实现文件比较. 本文讨论如何使用标准模板库(STL),类模板和函数模板,以及其它编程技术来解决实际问题。本文涉及到STL包含的集合和向量,函数模板,类模板,常量检验,出错处理和使用STL的文件I/O。 ...
C++ PPT第9章 标准模板库STL.ppt
介绍关于标准模板库STL的用法,想学习的朋友可以学习下。
C++标准模板库STL和泛型编程简介,数觉结构和算法的分离
数据结构C++语言描述——应用标准模板库STL.PDF
微动嵌入式培训-模板及标准模板库STL课件.pdf
标准模板库stl介绍,欢迎大家光临下载!
C++程序设计--标准模板库STL介绍及应用
C++编程语言标准模板库STL的介绍,包括各容器功能、原理、实现技术、技巧等