C++ standardbibliotek
I programmeringsspråket C++ betyder termen Standardbibliotek en samling klasser och funktioner skrivna på basspråket . Standardbiblioteket stöder flera huvudbehållare, funktioner för att arbeta med dessa behållare, funktionsobjekt, grundläggande typer av strängar och strömmar (inklusive interaktiva och fil-I/O), stöd för vissa språkfunktioner och vanliga funktioner för att utföra uppgifter som , hitta kvadratroten ur ett tal. C++ Standard Library inkluderar även ISO C90 C Standard Library specifikationer . Funktionaliteten för standardbiblioteket deklareras inom std- namnområdet .
Standard Template Library (STL) är en delmängd av C++ Standard Library och innehåller behållare, algoritmer, iteratorer, funktionsobjekt, etc. [1] även om vissa programmerare använder termen "STL" i kombination med (eller utbytbart med) termen "C++ Standardbibliotek" ".
C++ Standard Library-huvudfiler har inte tillägget ".h".
C++ Standard Library innehåller de senaste ANSI C++-tilläggen (inklusive Standard Template Library och det nya iostream-biblioteket). Det är en uppsättning header-filer. De nya rubrikfilerna saknar tillägget H. [2]
Standardhuvudfiler
Följande filer innehåller deklarationer från Standardbiblioteket.
Behållare
<bitset>
Implementerar en specialiserad containerklass std::bitset ,
bitmappen .
<deque>
Implementerar containerklassmallen std::deque ,
dubbelt länkad kö .
<lista>
Implementerar containerklassmallen std::list ,
dubbellänkad lista .
<karta>
Implementerar containerklassmallar std::map och std::multimap-
Associative Array och Multimapping .
<kö>
Implementerar containeradapterklassen , std::queue en enkelriktad
kö .
<set>
Implementerar containerklassmallar std::setoch std::multiset sorterade associativa behållare eller
uppsättningar .
<stack>
Implementerar adapter-container-klassen std::stack ,
stacken .
<vektor>
Implementerar containerklassmallen
std::vector , den
dynamiska arrayen .
Allmänt
<algoritm>
Implementerar definitionerna av många
algoritmer för att arbeta med behållare.
<funktionell>
Implementerar flera funktionsobjekt utformade för att fungera med standardalgoritmer.
<iterator>
Implementerar klasser och mallar för att arbeta med
iteratorer .
<lokal>
Implementerar klasser och mallar för att arbeta med
lokaler .
<minne>
Implementerar C++
minneshanteringsverktygstd::auto_ptr , inklusive .
<stdexcept>
Innehåller standardfelhantering av klasser som std::logic_erroroch std::runtime_error, som båda härrör från std::exception.
<verktyg>
Implementerar en klassmall std::pairför att arbeta med par (
tvåledade tuplar ) av objekt.
Strängar
<sträng>
Implementerar standard strängklasser och mallar.
<regex>
Nytt i
C++11 . Tillhandahåller verktyg för mönstermatchning av strängar med
reguljära uttryck .
Streaming och I/O
<fstream>
Implementerar verktyg för filinmatning och -utdata. Se
fstream .
<ios>
Implementerar flera typer och funktioner som ligger till grund för operationer med iostreams.
<iostream>
Implementerar den grundläggande inmatningen och utmatningen av C++-språket. Se
iostream .
<iosfwd>
Implementerar
vidaredeklarationer för flera I/O-relaterade klassmallar.
<iomanip>
Implementerar verktyg för att arbeta med utdataformatering, som bas , som används vid formatering av heltal och exakta värden
för flyttal .
<istream>
Implementerar klassmallen std::istreamoch andra obligatoriska inmatningsklasser.
<ström>
Implementerar klassmallen std::ostreamoch andra obligatoriska klasser för utdata.
<ström>
Implementerar en klassmall std::sstreamoch andra nödvändiga klasser för att arbeta med strängar.
<streambuf>
Numerisk
<komplex>
Implementerar klassmallen std::complexoch relaterade funktioner för att arbeta med
komplexa tal .
<numerisk>
Implementerar algoritmer för numerisk bearbetning
<valarray>
Implementerar en klassmall , en std::valarray arrayklass
som är optimerad för numerisk bearbetning.
Språkstöd
<undantag>
Implementerar flera typer och funktioner relaterade till
undantagshantering , inklusive std::exception basklassen för all undantagshantering i standardbiblioteket.
<gränser>
implementerar klassmallen std::numeric_limitssom används för att beskriva egenskaperna hos grundläggande numeriska typer.
<ny>
newImplementerar och operatörerna
delete, samt andra funktioner och typer som ligger till grund
för minneshantering i C++.
<typinfo>
Implementerar verktyg för att arbeta med
dynamisk datatypsidentifiering i C++.
C Standardbibliotek
Varje rubrikfil från C-standardbiblioteket ingår i C++-standardbiblioteket under olika namn skapade genom att klippa av .h-tillägget och lägga till 'c' i början, till exempel 'time.h' blev 'ctime'. Den enda skillnaden mellan dessa header-filer och de traditionella C-standardbibliotekets header-filer är att funktionerna måste placeras i std::-namnområdet (även om vissa kompilatorer gör detta själva). I ISO C-standarden tillåts standardbiblioteksfunktioner implementeras av makron , som inte är tillåtna i ISO C++.
Se även
Litteratur
Länkar
Anteckningar
- ↑ Holzner, Steven. C++: Black Book. — Scottsdale, Ariz. : Coriolis Group, 2001. - S. 648. - "STL består av behållare , iteratorer , funktionsobjekt och algoritmer ". — ISBN 1-57610-777-9 .
- ↑ C++ Standardbiblioteksändringar