Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3277388
  • 博文数量: 346
  • 博客积分: 10189
  • 博客等级: 上将
  • 技术积分: 3125
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-05 19:46
文章分类

全部博文(346)

文章存档

2013年(35)

2011年(35)

2010年(76)

2009年(48)

2008年(152)

分类: C/C++

2008-08-21 20:02:26

作者:
来源:

在网络上,关于STL使用的有许多优秀的文档,本文收集了一些经典的中文和英文文章,包含STL中的标准容器 vector list set map deque hash_map multiset multimap hash_set string Allocate stream及算法等各个方面,并会做简短的内容介绍和评价,并增加相应的链接。以后会随时更新补充新的内容,如果有朋友发现更好的文章,请回复留言,我 也会加入列表中--Winter

1 STL入门教程:

★★★★★

本文以List容器为例子,介绍了STL的基本内容,从容器到迭代器,再到普通函数,而且例子丰富,通俗易懂。不失为STL的入门文章,新手不容错过。

★★★★★

文章从STL基础知识讲起,逐步深入,涉及到了STL编写代码的方法、STL代码的编译和调试、命名空间、STL中的ANSI/ISO字符 串、各种不同类型的容器、模板、游标、算法、分配器、容器的嵌套等方面的问题,作者在这篇文章中对读者提出了一些建议,并指出了使用STL时应该注意的问 题。

三十分钟掌握STL★★★★

有个叫karry的网友翻译的《using stl》,可以快速浏览,从0开始了解STL。值得一看。

★★

文章从算法、容器、迭代器三方面简要介绍了STL,读者可以对STL有一简单映像。

★★★

本教程介绍有关学习C++ STL的预备知识和STL的相关背景知识,适合想对STL做大致了解的初学者。

★★

文中介绍STL基础知识,配有一个整体实例和图表说明,最后还做了简单的效率测试。

★★★

本文适合那些想立即开始使用,而不想关注太多STL琐碎细节的程序员。以list为例,讲解了在使用过程中的注意事项。

2 STL 容器:

★★★★★

Winter的详细解说STL系列之一,对string的原理和常用使用进行了详细解说,并对string在使用过程中的注意事项进行了总结。如果你希望对string有全面的了解,这篇文章是再好不过了。

深入研究 STL Deque 容器 ★★★★★

文章深入地研究了std::deque 容器。本文将讨论在一些情况下使用deque 比vector更好。读完这篇文章后读者应该能够理解在容量增长的过程中deque 与vector在内存分配和性能的不同表现。老外写文章确实比较严谨,值得一看。

STL vector 容器介绍 ★★★★★

这篇文章的目的是为了介绍std::vector,如何恰当地使用它们的成员函数等操作。本文中还讨论了条件函数和函数指针在迭代算法中使 用,如在remove_if()和for_each()中的使用。通过阅读这篇文章读者应该能够有效地使用vector容器,而且应该不会再去使用C类型 的动态数组了。又是一篇经典。

★★★

本文列出几个基本的STL map和STL set的问题,通过解答这些问题讲解了STL关联容器内部的数据结构,最后提出了关于UNIX/LINUX自带平衡二叉树库函数和map, set选择问题,并分析了map, set的优势之处。对于希望深入学习STL和希望了解STL map等关联容器底层数据结构的朋友来说,有一定的参考价值

★★★

本文描述的是一种很常见的情况:当你在某个缓存中存储数据时,常常需要在运行时调整该缓存的大小,以便能容纳更多的数据。本文将讨论如何使用 STL 的 vector 进行内存的再分配。原理说的比较详细,对于初学者比较适用。

3 STL应用:

★★★★

流是一种强大的数据处理抽象机制,它允许你调用泛型的读/写函数,不必关心数据从什么地方来、到什么地方去。使用流,同样的代码可从控制台、文件、套接字等地方读取数据。STL通常不是线程安全的,本文提出了如何在线程安全的方式下使用流的方案。

★★★

本文讨论如何使用标准模板库(STL),类模板和函数模板,以及其它编程技术来解决实际问题。本文涉及到STL包含的集合和向量,函数模板,类模板,常量检验,出错处理和使用STL的文件I/O。

ini文件是技术人员经常用到的一种系统配置方法,如何读取和快速识别ini文件中的内容实现起来比较繁琐。STL强大的功能在于能快速的实现排序、查找、 识别等功能。本文通过STL中的map,string,vector,ifstream等,来快速实现ini文件的识别类class IniFile。IniFile可以实现常见查找功能,并提供完整的源码。

4 STL其他:

★★★★★

本文告诉你什么时候不需要Allocator,什么时候需要Allocator,如何定义Allocator。配有详细的代码说明。如果你希望对Allocator有初步认识,这篇文章会告诉你。

★★★★★

STL几乎封装了所有的数据结构中的算法,从链表到队列,从向量到堆栈,对hash到二叉树,从搜索到排序,从增加到删除......可以 说,如果你理解了STL,你会发现你已不用拘泥于算法本身,从而站在巨人的肩膀上去考虑更高级的应用。排序算法是应用最为广泛的算法之一。本文详细介绍 STL 中 sort partial_sort nth_element partition 等算法的用法和区别。

★★★★★

分为50个条款,每个条款一个主题,详细介绍了STL容器、算法、迭代器、Allocator、应用等,通过例子,通俗易懂。但是需要读者 有一定的基础知识(至少知道vector是个容器吧),由不同作者翻译,Winter也翻译了几篇。共有50篇文章,每篇文章相互独立,你想看什么自己选 吧。强烈推荐。

★★★★

Allocator是C++语言标准库中最神秘的部分之一。它们很少被显式使用,标准也没有明确出它们应该在什么时候被使用。文章详细地介绍了STL中Allocator的用法和特点。如果你有较多的STL知识,又想更深入的了解STL Alloc,这篇文章再好不过了。

★★★★

STL之父Alexander Stepanov接收记者的采访,文章对於STL发展历史的最完备介绍, 侯捷先生在他的STL有关文章里推荐大家阅读这篇文章。原文在SGI STL上有一个版本,在portSTL上有一个版本,Winter做了简单的整理,把两个版本的英文和中文版本都做了相应的链接。还可以参卡最近的访问: [[][对话STL 之父Alex Stepanov]]。

STL的不同实现版本 ★★★

简要介绍了STL的几个版本,包括 HP STL, P.J.Plauger STL、 Rouge Wave STL、 STLport、 SGI STL,虽然文章比较短,如果想了解STL版本知识,还是值得一看的。

★★

标准运行库中的几个泛型算法在运行时使用了一元判定式(unary predicate)。例子是带if的算法,比如count_if()、find_if()、remove_if()、和replace_if(),但也 有partition()这样[不带if]的算法。在本次专栏中,我们就近距离接触unary predicate,看它们可能以及绝不能做什么。(内容比较专业了,只是翻译得好像不够好)

★★★★

本文详细讲解了STL.net的特性,其优势,并有充分的实例,值得一看。

★★★★★

本文中列举了权威的STL官方网站和STL学习网站,并提供了经典的STL教程推荐和电子书下载,不可错过。

阅读(2516) | 评论(1) | 转发(0) |
0

上一篇:各种排序算法

下一篇:C++ STL基本容器比较

给主人留下些什么吧!~~

chinaunix网友2010-07-22 09:41:58

第一个链接就有问题