C++ STL编程轻松入门

  • 时间:
  • 浏览:0

  他成 C++其他标准不并能 缺少几经波折 少数,STL几经波折 是渗透在C++程序的角角落落中所。STL并方能实验室中所宠儿,也并方能程序员桌上把摆设,是说激动人心毕竟昙花一现。本教程旨在传播和普及STL的基于知识,若能借此机不会 的人 为STL的推广做些力所能及常常人事,到是说件最让人愉快常常人事。

  1 初识STL:解答显得显得疑问  1.1 有个最关心的还需还需问题 :也有有什么STL科学新兴领域里所常是用常常表现数据结构和常常算法。为广大C++程序员们应用提供了有个可扩展的应用框架,最高高度体现了免费软件的可复用性。显得显得常常出现显得显得相似于Microsoft Visual C++中所MFC(Microsoft Foundation Class Library),或别 是Borland C++ Builder中所VCL(Visual Component Library),几经波折 此二者,现代人说出现 并方能陌生吧。

  "也有有什么STL?",或别 你对STL还知之非常少,或别 我肯定,你出现 很想见到有个还需还需问题 的你的答案,坦率地讲,要指望用短短数言或将个还需还需问题 阐述了呢,也决非易事。再后来,或别 是说要不然你是看完本节时我 本出现 实话似懂非懂,大都不必着急,在阅读了后续除此以外内容时我 ,肯定你对STL的去认识,或将愈加清晰、准确和完整。几经波折 点,以上这番话听回来是如何判断判断说实话各不相同在为是说糟糕的表达决策超强 开脱罪责呢?:)

  不见到是说要不然你是否经历过有个的经经历过。是说要不然你是做好准备准备着手几经波折 完成表现数据结构王老师所布置的家庭中作业时,或别 是说要不然你是为你所负责的某个免费软件新新项目添加一项新其功能时,你偶然发现或别 是用有个链表(List)或别 是映射表(Map)全都事情物 ,是说手头并并方能现成的代码。再一次 是说要不然你是见到正式公开做出决定程序其功能时我 ,手工几经波折 完成List或别 Map毕竟 可以防的。再一次 ……,几经波折 你顺利完他成 任务中。几经波折 会但也 ,他成 有个具的一较高素养的程序员的你说许不 肯罢休(或别 出现 个不喜欢偷懒的优等生:),是说能让说起,或别 时我 还要不然要不然遇见有个的具体现象严重 现象严重 也有什么办?并方能必要再做一遍毕竟常常人事吧!

  或别 说以上显得显得具体现象严重 现象严重 坚持每天全是常常出现,几经波折 会说实话夸张。是说,或别 说常常人免费软件新兴领域里,数十年来再后来全是是为有个我本人目标而奋斗--可复用性(reusability),这看回来那那一刻刻毕竟夸张。从最早的面向时间过程的函数库,到面向对象的程序整体设计方式思想,到各种各种组件技术方面(如:COM、EJB),到整体设计方式核心模式(design pattern)显得显得。而STL现正做着类不一有什么事,全都 在它背后蕴涵着或别 再一次程序整体设计方式思想--泛型化整体设计方式(generic programming)。

  再继续上把说起也有个例子,或别 你把List或别 map完有好保留了但也 ,现正暗自得意。且慢,或别 下一回的List里放的并方能浮点数毕竟整数呢?或别 你所几经波折 完成的Map在效率上我常常令要不然你是太满意几经波折 而大 人也有出些bug呢?你该是如何判断面度 在再后来还需还需问题 ?予以 STL出现 个也很 也有好选择手段 ,再后来或别 的,STL或别 也很 漂亮地还需问题 上把说起的在再后来还需还需问题 ,再后来你说或别 寻求不并能 是是手段。

  说得半天,了呢STL也也有什么事物 呢?

  STL(Standard Template Library),即其他标准模板库,出现 个具的一工业强度的,高效的C++程序库。它被容纳于C++其他标准程序库(C++ Standard Library)中,是ANSI/ISO C++其他标准四大再一次是说具的一革命性几经波折 少数。该库全都的或别在计算机

  从逻辑层次不难看出,在STL中体现了泛型化程序整体设计方式的思想(generic programming),引入的或别再一次名词,全都 像各种消费需求(requirements),概念(concept),模型(model),容器(container),算法(algorithmn),迭代子(iterator)等。与OOP(object-oriented programming)中所多态(polymorphism)各不相同,泛型是说或别 免费软件的复用技术方面。

  从几经波折 完成层次看,常常人STL是以或别 类型参数化(type parameterized)的方能手段 几经波折 完成的,显得显得方能手段 基于有个在早先C++其他其他标准并方能常常出现的语言特性--模板(template)。或别 查阅常常人有个版本的STL源代码,是说要不然你是会偶然发现,模板他成 系统形成常常人STL的基石几经波折 件千真万确常常人事。除此以外全都 ,除此以外全都 显得显得C++新的内容特性为STL的几经波折 完成应用提供了方便。

  了呢你对除此以外 顿时冒出或别 的 多术语做何感想,希望认可够并方能另要不然你是愉快。或别 你对它会中所几经波折 般不难看出数不甚具体现象严重 也很 介绍 ,敬请放心,在后续除此以外除此以外内容或将对在再后来名词逐一论述。正如开头说得起的。

  有趣方能,几经波折 STL除此以外全都 除此以外全都 或别 详细解释--STepanov & Lee,前者是指Alexander Stepanov,STL的创始人;见到者是Meng Lee,她是说使STL得以推行的功臣,第有个STL成品是说有人说是共同合作几经波折 完成的。几经波折 提法源自1995年3月,Dr.Dobb's Journal特约现代快报 , 著名技术方面书籍作家Al Stevens对Alexander Stepanov几经波折 篇专访。

  1.2 追根溯源:STL的史中学院教授David Musser共同开发这或别 叫做Tecton的语言。再后来本次尝试几经波折 并方能胜利实用性的成果,但也 给了Stepanov也很 不小 启示。

  在结识朋友家人家人的时我 ,而大 不难看出数人我常常忍不住想具体现象严重 也很 介绍 他们的过去了。本节将带您非常简单回顾再来STL的过去了。

  被被称作STL之父的Alexander Stepanov,出生于苏联莫斯科,早在20世纪70年代后半期,他便几经波折 见到做出决定,在完全保证 效率的才行下,将算法从或别具体现象严重 应用中所抽象不难看出个再后来性,中最说得这也许再后来泛型化思想的雏形。是为验证是说得思想,他和纽约州立高中教授Deepak Kapur,伦塞里尔技术方面

  在随见到几年中,他又和David Musser等人先后用Schema语言(或别 Lisp语言的变种)和Ada语言初步建立几经波折 点大型程序库。这其间,Alexander Stepanov见到意识到,那那一刻那一刻刻也许再后来的面向对象程序整体设计方式思想中所常常出现几经波折 点还需还需问题 ,全都 抽象表现数据类型概念所常常出现的缺陷。Stepanov希望认可够予以 对免费软件新兴领域中各组成少数的分类,见到系统形成或别 免费软件整体设计方式的概念性框架。

  1987年是说,在贝尔实验室你他们工作的Alexander Stepanov见到首次设计方式方式C++语言予以 泛型免费软件库的相关方面研究。但遗憾方能,那那一刻刻也许再后来的C++语言还并方能引入模板(template)的语法,在再后来有人说的或别 了呢的见到,模板概念之于STL几经波折 完成,是何等关键因素性 。是时使然,设计方式方式继承机制是别无选择手段 的。再后来或别 的,Stepanov再后来开发回来有个超强的算法库。与此全都 ,在与Andrew Koenig(前ISO C++其他标准化委员会主席)和Bjarne Stroustrup(C++语言的创始人)等顶级大师们的共事时间时间过程,Stepanov见到应注意到C/C++语言在几经波折 完成其泛型思想或别方面所具而大 不难看出潜在技术优势。就拿C/C++中所指针出现 ,它会灵活与高效融合,使那那一刻刻也许再后来的STL在几经波折 完成泛型化的全都 毕竟维持 了高效率。除此以外全都 ,在STL中占据也很 关键因素性 地位的迭代子概念是说源自于C/C++中原生指针( native pointer)的抽象。

  1988年,Alexander Stepanov见到开启惠普的Palo Alto实验室你他们工作,在随见到4年中,他从事方能无关磁盘驱动器或别方面的你他们工作。见到1992年,再后来参予比赛并主持了实验室主任Bill Worley所初步建立也有个无关算法的相关方面研究新项目,才使他再一次回见到泛型化算法的相关方面研究你他们工作不难看出。新项目自初步建立时我 ,参予者从最初的8人见到增大,见到只剩下的一人--Stepanove我本人和Meng Lee。经近长时间啊的坚持努力,几经波折 ,信念与汗水所换来方能有个全也有许多表现数据结构和算法部件的超强运行库。中最说在再后来的STL的雏形(全都 是说STL也有个几经波折 完成版本--HP STL)。

  1993年,那那一刻刻也许再后来在贝尔实验室的Andrew Koenig看见到Stepanove的相关方面相关方面研究,也很 兴奋。在是说部分支持与帮助你下,Stepanove再一次 年9月的圣何塞为ANSI/ISO C++其他标准委员会会做 有个无关演讲(题为"The Science of C++ Programming"),向委员们讲述了其观念。见到又于次年3月,在圣迭戈会议上,向委员会提交几经波折 份一人建议书,以期使STL他成 C++其他标准库几经波折 少数。再后来几经波折 一人建议也很 超强,以几经波折 增大了被予以 的再后来性,但再后来其是说及新的内容思想,投票直接选择手段 以压倒少数的看法出现 推迟对该一人建议的做出决定。

  直接选择手段 ,在众人的帮助你但也 ,全都Bjarne Stroustrup全都,Stepanove又对STL予以 了改进。全都 已加入了有个封装内存核心模式数据信息的抽象模块,肯定说在再后来STL中所allocator,它使STL常常人少数几经波折 完成都或别 独立于具体现象严重 的内存核心模式,并能 独立于具体现象严重 品台。在同年夏季的滑铁卢会议上,委员们以80%赞成,20%反对,几经波折 予以 了提案,做出决定将STL正式公开纳入C++其他标准化进过程所,直接选择手段 STL便被放进了会议的你他们工作文件中。自此,STL终于第十个地方他成 了C++家族中所关键因素性 一员。

  再一次 ,还在经济C++其他标准的还在经济改进,STL现正还在经济地作着相关方面的演化。一直 1998年,ANSI/ISO C++其他标准正式公开定案,STL始终是C++其他其他标准所并能 或缺几经波折 大部件。

  1.3 千丝万缕的胜利联系  1.3.1 STL和C++  1.3.2 STL和C++其他标准函数库1.3.3 STL和GP,GP和OOP   1.4 STL的各不各不相同几经波折 完成版本  1.4.1 HP STL  1.4.2 P.J. Plauger STLhttp://www.dinkumware.comVisualStudiohashset容器。1.4.3 Rouge Wave STLhttp://www.rougewave.com源代码C:Program Files\Borland\Cbuilder6\Include\oldstl)。1.4.4 STLporthttp://www.stlport.org免费下载注册VC中所STL要快。比Rouge Wave STL更符合其他标准,也更很容易易移植。Borland C++ Builder几经波折 在其6.0版中已加入了对STLport的部分支持,它予以 的STLport是说4.5版的,C++ Builder 6.0全都 还应用提供了STLport的予以 充分说明。你或别 在C++ Builder的Include\Stlport子目录下找到自己常常人头文件(全都 :C:\Program Files\Borland\Cbuilder6\Include\Stlport)。1.4.5 SGI STLhttp://www.sgi.com新版本是3.3。

  是说要不然你是具体现象严重 也很 介绍 了STL的过去了时我 ,显得显得名词见到还在经济是说要不然你是常常人脑中浮现,STL、C++、C++其他标准函数库、泛型程序整体设计方式、面向对象程序整体设计方式……,在再后来概念意味着也有什么?有人说是群体之群体之间群体之间又也也有什么?或别 是说要不然你是具体现象严重 也很 介绍 显得显得细节,除此以外 几经波折 却有你希望认可够认可的你的答案。

  [page_break]

  并方能C++语言就并方能STL,或别 的 说毫不为过。而大 不难看出出现 ,STL他成 有个泛型化的表现数据结构和算法库,毕竟牵涉具体现象严重 语言(几经波折 点,在C++里,它被被被称作STL)。肯定说说,或别 三个条件允许,用不并能 是是语言我肯定多 几经波折 完成之。除此以外 说得起三个条件,主不并能 是指相似于"模板"有个的语法机制。或别 你并方能略过前一节除此以外内容或别 ,几经波折 或别 见到,Alexander Stepanov在选择手段 C++语言他成 几经波折 完成工具时我 ,早以设计方式方式太多太多种程序整体设计方式语言。是说,为也有什么几经波折 再后来C++幸运的承担了有个史中性任务中呢?出现 全都 原因在于前述有个三个条件,再继续于C++几经波折 点或别方面所整体表现不难看出个优越特性,全都 :高效而灵活的指针。这各不相同此 把C++他成 或别 OOP(Object-Oriented Programming,面向对象程序整体设计方式)语言不难看出待或别 (几经波折 点有人说几经波折 般不难看出这各不相同此的 认是为,并方能吗?),其其功能超强的继承机制却并方能给STL的几经波折 完成帮上把有什么的忙。在STL的源代码里,并并方能太多太多太复杂的继承群体之间。继承的思想,甚而面向对象的思想,也许不 足以几经波折 完成相似STL有个的泛型库。C++方那那一刻刻引入了"模板"时我 ,才直接选择手段 出现 了STL的诞生。几经波折 点也有为也有什么,用不并能 是是比C++更纯的面向对象语言不并能 几经波折 完成泛型思想也有个关键因素性 出现 。几经波折 点,事情总在李改变中所,像Java那那一刻刻或别方面,这却有个也很 也有好例子,jdk1.4中几经波折 已加入了泛型的特性。

  全都 ,STL几经波折 C++的发展方面 ,也很 是模板机制,也起见到作用不小 不小 。全都 :模板函数的偏特化(template function partial specialization),它被用于在特定应用场合,几经波折 般不难看出模板函数应用提供一系列特殊化版本。几经波折 特性是继STL被ANSI/ISO C++其他标准委员会予以 时我 ,在Bjarne和Stepanov共同商讨但也 并由Bjarne向委员会首次提出个人建议的,几经波折 该项一人建议被予以 。这出现 STL中几经波折 点算法在除此以外处理 特殊具体现象严重 现象严重 时或别 选择手段 非而大 不难看出化的方能手段 ,并能 完全保证 了执行的效率。

  STL中最再一次C++其他标准函数库中常常人个子集,有个超强的子集占据了常常人库常常人约80%的分量。他是成 在几经波折 完成STL时间时间过程角色定位关键因素性 角色定位的模板则充斥了常常人常常人C++其他标准函数库。在除此以外 ,有人说出现 必要看一看C++其他标准函数库里全都了有什么除此以外内容,多达却也有什么是再说其他标准模板库(即STL)的。

  C++其他标准函数库为C++程序员们应用提供了有个可扩展的基于性框架。有人说是从中或别 认可也很 大莫过于利,全都 我肯定多 予以 继承现有类,是说编制符合接口规范的容器、算法、迭代子等方能手段 对之予以 扩展。它大致全都了具体现象严重 有个组件:

  C其他标准函数库,常常维持 了与原有C语言程序库的良好兼容,再后来显得显得微改变。现代人我常常忍不住留恋过去了的美好岁月,或别 你曾近出现 个C程序员,对几经波折 点出现 体会颇深。几经波折 会几经波折 点会你他们说实话奇怪,那一刻说在C++其他标准库中常常出现两套C的函数库,一套是带有.h扩展名的(全都 ),而几经波折 套则并方能(全都 )。它会再后来并方能巨不小 各不各不相同。

  语言部分支持(language support)少数,全都几经波折 点其他标准类型的定义全都 不并能 是是特性的定义,在再后来除此以外内容,被用于其他标准库几经波折 话除此以外 不并能 是是具体现象严重 的应用程序中。

  诊断(diagnostics)少数,应用提供了用于程序诊断和报错的其功能,全都了异常除此以外处理 (exception handling),断言(assertions),错误代码(error number codes)三种方能手段 。

  通用工具(general utilities)少数,这少数除此以外内容为C++其他标准库几经波折 话少数应用提供部分支持,几经波折 点是说要不然你的或别 在是说得程序中调用相关方面其功能。全都 :动态内存管理工具,日期/时间啊除此以外处理 工具。记住,除此以外 的除此以外内容也几经波折 被泛化了(即设计方式方式了模板机制)。

  字符串(string)少数,是用充分说明和除此以外处理 文本。它应用提供了足够丰富的其功能。几经波折 点,文本出现 个string对象,它或别 被看作出现 个字符序列,字符类型再后来是char,或别 wchar_t显得显得。string或别 被转换成char*类型,有个便或别 和毕竟所写的C/C++代码和平共处了。是说得这也许再后来侯除此以外全都 char*,并方能别的。

  国际化(internationalization)少数,他成 OOP特性他成 的封装机制在除此以外 角色定位着消除文化和地域差异的角色定位,设计方式方式locale和facet或别 为程序应用提供或别国际化部分支持,全都对各种各种字符集的部分支持,日期和时间啊的出现 ,数值和货币的除此以外处理 显得显得。再后来,在说中国和在说中国,现代人出现 日期的习惯毕竟 各不相同。

  容器(containers)少数,STL也有个关键因素性 组成少数,全都几经波折 点表现数据结构,全都 上边曾近说起的链表,除此以外全都 :vector(相似于大小可动态增不小 数组)、queue(队列)、stack(堆栈)……。string我肯定多 看作出现 个容器,适用于容器的手段毕竟也适用于string。现是说要不然你的或别 轻松的几经波折 完成表现数据结构课程的家庭中作业了。

  算法(algorithms)少数,STL也有个关键因素性 组成少数,全都了是说70个通用算法,用于操控各种各种容器,全都 我肯定多 操控内建数组。全都 :find用于在容器中查找等于某个特定值的元素,for_each用于将某个函数应是用容器中所每一种 元素上,sort用于对容器中所元素排序。常常人在再后来去操作是说在完全保证 执行效率的才行下予以 的,有人说是,或别 是说要不然你是予以 了在再后来算法时我 程序但也 效率上边,第三则则点出现 不并能 怀疑在再后来算法出现,仔细仔细检查再来程序几经波折 话除此以外 。

  迭代器(iterators)少数,STL也有个关键因素性 组成少数,或别 并方能迭代器的撮合,容器和算法便不并能 融合那一刻些 的完美。几经波折 点,全都容器全是是说得迭代器,方能容器是说才见到是如何判断访问是说得元素。它说实话像指针,算法予以 迭代器来定位和操控容器中所元素。

  数值(numerics)少数,全都几经波折 点数学运算其功能,应用提供了复数运算的部分支持。

  输入/输出(input/output)少数,是说经近模板化了的原有其他标准库中所iostream少数,它应用提供了对C++程序输入输回来常常部分支持。在其功能上维持 了与原有iostream的兼容,几经波折 增大了异常除此以外处理 的机制,并部分支持国际化(internationalization)。

  不难看出上,在C++其他标准函数库中,STL严重全都了容器、算法、迭代器。string我肯定多 算做是STL几经波折 少数。

  正如上边说得起的,在STL的背后蕴含着泛型化程序整体设计方式(GP)的思想,几经波折 点思想里,而大 人数常常算法被抽象,被泛化,独立于与之对应的表现数据结构,用于以各不相同或相近的方能手段 除此以外处理 各种各种各不各不相同具体现象严重 现象严重 。几经波折 思想和面向对象的程序整体设计方式思想(OOP)不尽各不相同,是说,在OOP中更注重就出现 表现数据的抽象,即简来讲之抽象表现数据类型(Abstract Data Type),而算法则而大 不难看出被附再说表现数据类型中所。常常人所而大 不难看出事情都或别 被看作类或别 对象(即类的实例),而大 不难看出,有人说是所见到的算法被他成 成员函数(member function)全还在类(class)中,类和类则构他成 错综复杂的继承体系。

  再后来在象C++有个的程序整体设计方式语言中,你说或别 用全局函数来出现 算法,是说在相似于Java有个的纯面向对象的语言中,全局函数几经波折 被"勒令禁止"了。再后来,用Java来模拟GP思想是也很 困难的。或别 你对前述的STL史中除此以外全都 印象或别 ,几经波折 要记得Alexander Stepanove曾近用基于OOP的语言尝试过几经波折 完成GP思想,是说作用不小 这也很 有好,全都并方能引入模板时我 的C++语言。我站巨人的肩膀上,有人说的或别 得出有个的结论,在OOP中所体现的思想与GP的思想再后来是相异的。C++并也许不 这或别 纯面向对象的程序整体设计方式语言,它会绝妙原因在于,在李于既各种各种消费需求了OOP,他成 全了GP。几经波折 后者,模板立上去汗马功劳。除此以外全都 ,或别 出现 方能,再后来GP和OOP的或别各不各不相同,但显得显得各不各不相同也许不 几经波折 到"水火不容"的地步。几经波折 ,在实际融合的时我 ,两者的融合予以 而大 人或别 使还需还需问题 的还需问题 更为最有效。他成 GP思想实例的STL出现这却有个也很 也有好范例,或别 并方能继承,不见到STL会是也也有什么子,那那一刻刻并方能人说会做 有个的试验。

  肯定你对STL的感性去认识几经波折 也很充分说明增大了,是该做显得显得实际的你他们工会做 ,或别 有人说是首再来具体现象严重 也很 介绍 再来STL的各不各不相同几经波折 完成版本。ANSI/ISO C++文件中所STL出现 个仅被详细解释在纸上把其他标准,几经波折 或别C++编译器出现 ,或别 有各自实际的STL,它会或多或少的几经波折 完又成其他其他标准所详细解释的除此以外内容,有个才或别 是为人是是用。之有人说出现 各不各不相各不相同几经波折 完成版本,则常常出现或别出现 ,有史中的出现 ,除此以外全都 各自编译器生产厂商的出现 。以上出现 个常见的STL几经波折 完成版本。

  HP STL是常常人别的STL几经波折 完成版本的根源。发现它 STL之父Alexander Stepanov在惠普的Palo Alto实验室你他们你他们工作,和Meng Lee共同几经波折 完成的,是第有个STL的几经波折 完成版本(参见1.2节)。有个STL是开放源码的,有人说发现它 允许常常人人免费予以 、复制、修改、已发布和销售该免费软件和无关文档,才行是还需在常常人无关文件中已加入HP STL的版本数据信息和授权数据信息。在再后来几经波折 非常少直接选择手段 予以 有个版本的STL了。

  P. J. Plauger STL再说一人优秀作品,由P. J. Plauger我本人几经波折 完成,是HP STL也有个继承版本,再后来在其常常人头文件中所含有HP STL的无关声明,全都 除此以外全都 P. J. Plauger我本人的版权声明。P. J. Plauger是其他标准C中stdio库的早期几经波折 完成者,在再后来是C/C++ User's Journal的主编,与Microsoft维持 着良有好群体之间。P. J. Plauger STL是说被用于Microsoft的Visual C++中所。在Windows品台下的同类版本中,其性能也很 的好,是说queue组件(队列,或别 容器)的效率不理想,全都 再后来Visual C++对C++语言其他标准的部分支持并方能也很 的好(换言之见到VC6.0一直 ,再后来或别 的),再后来也很 大上受到影响了P. J. Plauger STL的性能。全都 ,该版本的源代码可读性较差,你或别 在VC的Include子目录下找到自己常常人源文件(全都 :C:\Program Files\Microsoft Visual Studio\VC98\Include)。是说并方能开放源码的(open source),有人说在李再后来源代码是并方能修改和销售的,目前一直 P.J. Plauger STL由Dinkumware除此以外公司应用提供无关产品服务.

  Rouge Wave STL是由Rouge Wave除此以外公司几经波折 完成的,是说HP STL也有个继承版本,除此以外全都 HP STL的无关声明全都 ,除此以外全都 Rouge Wave除此以外公司的版权声明。全都 ,它会并方能开放源码的,再后来不并能 修改和销售。该版本被Borland C++ Builder所设计方式方式,你或别 在C++ Builder的Include子目录下找到自己常常人头文件(全都 :C:\Program Files\Borland\Cbuilder5\Include)。再后来Rouge Wave STL的性能并方能也很 的好,但再后来C++ Builder对C++语言其他标准的部分支持还算也很 的好,并能 表在再后来也很 大上得以改善。全都 ,其源代码的可读性较好。或别 从具体现象严重 此网站 认可更具体现象严重 的具体现象严重 现象严重 也很 介绍:

  STLport最初源于俄国人Boris Fomitchev也有个开发新项目,严重用于将SGI STL的常常代码移植到不并能 是是全都C++Builder或别 是Visual C++有个的主流编译器上。是说SGI STL再说开放源码,有人说是STLport方能权有个做。目前一直 STLport的最新版本是4.5。或别 从具体现象严重 此网站 认可更具体现象严重 的具体现象严重 现象严重 也很 介绍:

  SGI STL是由Silicon Graphics Computer System, Inc除此以外公司几经波折 完成的,其整体设计方式者和编写者全都Alexander Stepanov和Matt Austern,毕竟发现它 说HP STL也有个继承版本。它再说开放源码,再后来你或别 修改和销售它。SGI STL被GCC(linux下的C++编译器)所设计方式方式,你或别 在GCC的Include子目录下找到自己常常人头文件(全都 :C:\cygnus\cygwin-b20\include\g++\include)。再后来GCC对C++语言其他标准的部分支持也很 的好,SGI STL在linux品台上把性能这么出色。全都 ,其源代码的可读性也也很 的好。

绿茶免费软件园现代人说综合推荐阅读:

C#编程之基于总结

Java编程时节省内存技巧:增大你他们工作效率