青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

STL(Standard Template Library),即標準模板庫,是一個具有工業強度的,高效的C++程序庫。它被容納于C++標準程序庫(C++ Standard Library)中,是ANSI/ISO C++標準中最新的也是極具革命性的一部分。該庫包含了諸多在計算機科學領域里所常用的基本數據結構基本算法。
有些類似于Microsoft Visual C++中的MFC(Microsoft Foundation Class Library),或者是Borland C++ Builder中的VCL(Visual Component Library)

從邏輯層次來看,在STL中體現了泛型化程序設計的思想(generic programming),引入了諸多新的名詞,比如像需求(requirements),概念(concept),模型(model),容器(container),算法(algorithmn),迭代子(iterator)等。與OOP(object-oriented programming)中的多態(polymorphism)一樣,泛型也是一種軟件的復用技術。
從實現層次看,整個STL是以一種類型參數化(type parameterized)的方式實現的,這種方式基于一個在早先C++標準中沒有出現的語言特性--模板(template)。如果查閱任何一個版本的STL源代碼,你就會發現,模板作為構成整個STL的基石是一件千真萬確的事情。
在STL的源代碼里,并沒有太多太復雜的繼承關系。繼承的思想,甚而面向對象的思想,還不足以實現類似STL這樣的泛型庫。C++只有在引入了"模板"之后,才直接導致了STL的誕生。這也正是為什么,用其他比C++更純的面向對象語言無法實現泛型思想的一個重要原因。當然,事情總是在變化之中,像Java在這方面,就是一個很好的例子,jdk1.4中已經加入了泛型的特性。
1.3.2 STL和C++標準函數庫

  STL是最新的C++標準函數庫中的一個子集,這個龐大的子集占據了整個庫的大約80%的分量。而作為在實現STL過程中扮演關鍵角色的模板則充斥了幾乎整個C++標準函數庫。
它大致包含了如下幾個組件:
C標準函數庫,基本保持了與原有C語言程序庫的良好兼容,盡管有些微變化。人們總會忍不住留戀過去的美好歲月,如果你曾經是一個C程序員,對這一點一定體會頗深。或許有一點會讓你覺得奇怪,那就是在C++標準庫中存在兩套C的函數庫,一套是帶有.h擴展名的(比如<stdio.h>),而另一套則沒有(比如<cstdio>)。它們確實沒有太大的不同。
診斷(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的一部分。



圖1:STL和C++標準函數庫
Posted on 2006-01-01 12:13 艾凡赫 閱讀(759) 評論(0)  編輯 收藏 引用 所屬分類: C++
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            新狼窝色av性久久久久久| 亚洲免费观看高清完整版在线观看熊 | 午夜国产精品视频| 免费在线欧美黄色| 久久久久久久国产| 国产精品福利av| 欧美激情一级片一区二区| 国产亚洲欧美激情| 亚洲一区黄色| 亚洲网友自拍| 欧美日韩精选| 亚洲欧洲精品天堂一级| 亚洲成人在线| 久久久久久午夜| 久久久久久久国产| 国产日韩一区二区三区| 亚洲欧美另类在线| 亚洲欧美日韩精品综合在线观看| 欧美精品乱人伦久久久久久 | 一区二区三区产品免费精品久久75| 在线观看91久久久久久| 久久av资源网站| 久久久久在线| 永久91嫩草亚洲精品人人| 久久久久久久久岛国免费| 久久久99爱| 亚洲第一福利在线观看| 久久久人人人| 欧美国产日韩二区| 亚洲精品资源美女情侣酒店| 欧美aⅴ一区二区三区视频| 欧美激情视频在线播放| 亚洲精品国产精品国自产观看| 欧美88av| 99re这里只有精品6| 亚洲性图久久| 国产女优一区| 久久久精品动漫| 欧美高清在线一区| 日韩视频一区二区在线观看 | 亚洲欧美综合网| 国产精品视频网站| 欧美在线地址| 欧美激情中文字幕一区二区| 日韩视频永久免费观看| 国产精品jvid在线观看蜜臀| 亚洲亚洲精品在线观看| 久久成人综合网| 狠狠入ady亚洲精品| 欧美成人午夜77777| 99热免费精品| 久久精品噜噜噜成人av农村| 在线观看不卡av| 欧美日韩精品久久久| 午夜精品福利一区二区三区av | 国产婷婷色一区二区三区四区| 久久国产乱子精品免费女 | 猫咪成人在线观看| 99精品国产在热久久婷婷| 欧美有码视频| 日韩视频在线一区二区| 国产欧美高清| 欧美高清你懂得| 午夜精品视频在线观看| 欧美激情一区二区久久久| 亚洲欧美日本视频在线观看| 雨宫琴音一区二区在线| 欧美视频在线观看视频极品| 久久er精品视频| 一本色道婷婷久久欧美| 欧美+日本+国产+在线a∨观看| 中文一区二区在线观看| 精品动漫av| 国产精品久久久久久久久搜平片 | 国产午夜精品全部视频播放| 女主播福利一区| 欧美一区二区日韩一区二区| 最新日韩中文字幕| 狼狼综合久久久久综合网| 亚洲在线播放电影| 亚洲国产一区二区精品专区| 国产日韩欧美亚洲| 欧美午夜精品一区| 欧美成人69| 久久精品一区二区国产| 亚洲天堂av在线免费| 亚洲激情电影中文字幕| 久热这里只精品99re8久| 性欧美暴力猛交69hd| 一区二区三区.www| 亚洲欧洲在线播放| 亚洲第一级黄色片| 好看的日韩视频| 国产乱人伦精品一区二区| 欧美日韩国产在线播放| 欧美成人有码| 免费在线国产精品| 麻豆精品在线视频| 噜噜噜久久亚洲精品国产品小说| 欧美一区二区三区在线视频| 亚洲免费网站| 亚洲欧美日韩第一区| 亚洲午夜精品17c| 亚洲无人区一区| 亚洲一区二区伦理| 亚洲午夜精品视频| 亚洲影院在线观看| 亚洲专区在线| 午夜一区不卡| 欧美一区日韩一区| 久久精品观看| 久久蜜桃精品| 蜜臀久久99精品久久久久久9 | 欧美激情视频在线免费观看 欧美视频免费一| 久久精品亚洲精品| 久久午夜视频| 欧美gay视频| 欧美电影免费观看大全| 亚洲高清不卡| 亚洲精品在线看| 一区二区三区视频在线| 亚洲一区二区三区色| 羞羞色国产精品| 久久免费视频在线观看| 欧美xx69| 国产精品成人一区二区艾草| 国产精品一香蕉国产线看观看| 国产欧美一区二区精品秋霞影院| 国产日韩亚洲| 亚洲欧洲精品一区二区精品久久久| 亚洲乱码精品一二三四区日韩在线| 日韩一级片网址| 亚洲欧美在线另类| 久久亚洲精选| 亚洲日本欧美天堂| 亚洲欧美日韩爽爽影院| 久久九九热re6这里有精品| 免费观看不卡av| 欧美三日本三级少妇三2023| 国产日韩一级二级三级| 亚洲国产精品成人综合色在线婷婷| 日韩视频一区二区三区在线播放免费观看| 亚洲一区二区三区影院| 久久久精品999| 亚洲欧洲一区二区在线观看| 亚洲一级黄色av| 麻豆精品91| 国产精品日韩在线| 最新日韩在线视频| 欧美亚洲日本国产| 亚洲国产精品久久久久婷婷老年 | 一本大道久久a久久精二百| 欧美在线一区二区| 欧美三级视频在线| 亚洲大胆av| 久久国产视频网站| 日韩午夜电影| 久久综合九色欧美综合狠狠| 国产精品久久久久久亚洲调教| 1769国内精品视频在线播放| 午夜在线精品偷拍| 亚洲人久久久| 久久免费少妇高潮久久精品99| 国产精品久久97| 99xxxx成人网| 欧美成人精品不卡视频在线观看| 亚洲综合二区| 欧美午夜视频一区二区| 亚洲国产欧美国产综合一区| 久久精品在线观看| 中文精品在线| 欧美日韩三级| 日韩视频一区二区三区| 每日更新成人在线视频| 欧美亚洲网站| 国产精品亚洲不卡a| 亚洲午夜激情网页| 亚洲国产日韩一区| 美女诱惑一区| 亚洲第一在线综合在线| 久久久久国色av免费观看性色| 亚洲无线观看| 国产精品久久久久久久久 | 亚洲六月丁香色婷婷综合久久| 老牛嫩草一区二区三区日本| 午夜在线电影亚洲一区| 国产精品视频免费观看| 午夜亚洲性色福利视频| 一区二区三区精品久久久| 欧美日本网站| 亚洲视频你懂的| 一区二区三区 在线观看视频| 欧美日韩国产999| 亚洲精品一区二区三| 亚洲国内精品在线| 欧美激情在线狂野欧美精品| 99精品国产高清一区二区| 91久久亚洲| 欧美视频中文字幕在线| 亚洲在线免费|