Przestrzenie nazw
Warianty
Działania

Standardowa Biblioteka Szablonów

Z cppreference.com
< cpp


C++ STL (Standardowa Biblioteka Szablonów) jest ogólną biblioteką szablonów klas i algorytmów, pozwalającą programistom łatwo wdrożyć standardowe struktury danych, takie jak kolejki, listy oraz stosy.

Spis treści

[edytuj] Kontenery STL

C++ STL udostępnia dwa rodzaje kontenerów:

Dodatkowo, standardowa biblioteka C++ udostępnia kilka kontenerów nie-STL'owych. Mogą one być uważane za kontenery ale nie spełniają wszystkich wymagań kontenerów STL'owych

Idea kryjąca się za powstaniem biblioteki STL polegała na stworzeniu największej części złożonych struktur danych. Jeżeli programista będzie chciał użyć stosu liczb całkowitych (INT) to wystarczy użyć tego fragmentu kodu:

  stack<int> myStack;

Z minimalnym wysiłkiem można teraz użyć metod pl/stl/stack/push (wsadź) oraz pl/stl/stack/pop (pobierz) do wstawania i pobierania zmiennych ze stosu. Wykorzystując magię szablonów C++ (C++ Templates), można zdefiniować dowolny typ zmiennych, nie tylko całkowity (INT). Clasa Stack (stos) udostępni podstawową funkcjonalność na stosie w zależności od danych tam zawartych.

[edytuj] Algorytmy

STL dostarcza garść użytecznych algorytmów -- takich jak:

które mogą być użyte na wielu kontenerach lub strukturach danych.

[edytuj] Iteratory

Iteratory udostępniają podstawowy sposób do iterowania się po kontenerach i innych strukturach danych

[edytuj] Objekty funkcyjne

Plik nagłówkowy <functional> definiuje objekty funkcyjne i adaptery funkcji.

[edytuj] Pamięć

Plik nagłówkowy <memory> udostępnia proste struktury zarządzania pamięcią takie jak inteligentne wskaźniki.

[edytuj] Narzędzia

Istnieje kilka uniwersalnych metod narzędziowych jak pary w pliku nagłówkowym <utility>.