《C++标准程序库》学习笔记(一)初识STL

原创 2011年01月08日 13:39:00
STL(标准模板库)是C++标准程序库的核心。STL是一个泛型(generic)程序库,提供一系列软件方案,利用先进、高效的算法来管理数据。从程序员的角度看来,STL是由一些可适应不同需求的群集类别(collection classes),和一些能够在这些数据群集上运作的算法构成。STL内的所有组件都由templates(模板)构成,所以其元素可以是任意型别。

STL的六大组件:

l 容器(container)用来管理某类对象的集合。

l 算法(algorithm)用来处理群集内的元素。

l 迭代器(iterator)用来在一个对象群集(collection of objects)的元素上进行遍历动作。

l 配接器(adapter

l 仿函数(functor

l 配置器(allocator

 图1 STL组件之间的合作

备注:容器、算法、迭代器——STL的三个基本组件。


侯捷曾经把STL的学习比喻为三个境界(或层次):

第一境界:熟用STL

第二境界:了解泛型技术的内涵与STL的学理乃至实作

第三境界:扩充STL

一般的程序员,能达到第一个境界已经是不小的收获了,如果达到第二境界那可谓是很大的成绩了!于我,是不敢奢求第三境界的


附1:STL(Standard Template Library)在维基百科中的简介(链接在这里)。

C++标准库与STL的关系

STL即标准模板库(Standard Template Library),它包括五大类组件:算法、容器、迭代器、函数对象、适配器。 STL是C++标准库的一部分,但不是全部。C++标准库是std...
  • nodeathphoenix
  • nodeathphoenix
  • 2014年06月21日 18:18
  • 2441

《C++标准程序库STL》笔记

5.STL标准模版库 笔记在书上。看到5.4算法(5.4算法还没有看)     STL = Standard Template Library,标准模板库   6.STL容器   6.2...
  • dugaoda
  • dugaoda
  • 2015年05月06日 18:56
  • 128

C++ STL标准程序库初探

C++ STL标准程序库初探   首先解决一个vs2010中按crtl+f5后,CMD闪烁后消失突然消失的问题:     在你的项目条目(project)上右击鼠标,在弹出菜单上选择最后一项“prop...
  • ZHE123ZHE123ZHE123
  • ZHE123ZHE123ZHE123
  • 2015年08月13日 08:48
  • 1676

C++基础:C++标准库之map简介

1、综述         Map是C++STL中众多的Container(容器)之一,与python的字典略类似,Map作为一个关联容器,将key与value相互关联,其中key为关键字,是不可更改...
  • zhangyalin1992
  • zhangyalin1992
  • 2014年05月19日 22:35
  • 1293

C++ STL 基础及应用(4) 输出输出流

在 C++ 的标准模板库中提供了一组模板类来支持面向对象的数据的输入输出功能,如基本的输入输出流 istream类/ostream类,文件输入输出流 ifstream类/ofstream类/fstre...
  • Raito__
  • Raito__
  • 2016年06月01日 16:25
  • 4057

C++的标准模板库STL中实现的数据结构之链表std::list的分析与使用

摘要 本文主要借助对C++的标准模板库STL中实现的数据结构的学习和使用来加深对数据结构的理解,即联系数据结构的理论分析和具体的应用实现(STL),本文是系列总结的第二篇,主要针对线性表中的链表 S...
  • LG1259156776
  • LG1259156776
  • 2015年07月23日 15:36
  • 5782

C++STL输入输出流

1.标准输入的不足
  • u014634338
  • u014634338
  • 2014年06月25日 00:01
  • 528

《C++标准程序库》——STL迭代器

原文出处:http://www.cnblogs.com/chinazhangjie/archive/2011/06/25/2090084.html 1 头文件   所有容器有含有其各自的迭代器型别...
  • shuangshuang37278752
  • shuangshuang37278752
  • 2013年08月30日 21:32
  • 473

【C++ STL应用与实现】72: 标准库里的堆--如何使用标准库的heap算法

本文介绍如何使用STL里的heap(堆)算法。第一次接触heap这种数据结构是在大学的数据结构教材上,它是一棵完全二叉树。在STL中,heap是算法的形式提供给我们使用的。包括下面几个函数: mak...
  • elloop
  • elloop
  • 2016年11月29日 23:41
  • 1010

c++标准程序库:STL容器之vector

http://blog.csdn.net/pipisorry/article/details/39231949vector(向量): C++中的一种数据结构,确切的说是一个类。它相当于一个动态的数组,...
  • pipisorry
  • pipisorry
  • 2014年09月12日 16:42
  • 989
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:《C++标准程序库》学习笔记(一)初识STL
举报原因:
原因补充:

(最多只允许输入30个字)