C++/Filozofia STL: Różnice pomiędzy wersjami

Z Wikibooks, biblioteki wolnych podręczników.
< C++
Usunięta treść Dodana treść
m usunięcie kategorii
Linia 38: Linia 38:


<noinclude>
<noinclude>

[[Kategoria:C++]]
{{ProstaNawigacja|spis=C++|poprzart=C++:Wskaźniki do elementów składowych|poprz=Wskaźniki do elementów składowych|nastart=C++:String|nast=String}}
{{ProstaNawigacja|spis=C++|poprzart=C++:Wskaźniki do elementów składowych|poprz=Wskaźniki do elementów składowych|nastart=C++:String|nast=String}}
</noinclude>
</noinclude>

Wersja z 12:15, 26 sty 2007

Filozofia STL

Biblioteka standardowa języka C++ jest jego częścią i należy do standardu. Uzupełnia sam język logicznymi strukturami czyniąc go bardziej użytecznym. STL (ang. Standard Template Library) jest chyba pierwszą rzeczą jaką trzeba sie nauczyć zaraz po samej nauce języka C++. STL jest pewną częścią biblioteki standardowej należącą do języka C++, a nie całą. Dlaczego warto używać STL? Żeby nie odkrywać koła na nowo mówiąc w skrócie, tworzyć kod przenośny między platformami i wiele innych przyczyn wynikających ze stopnia zaawansowania twojego programowania. W tym artykule postaram sie opisać biblioteką standardową wzorców dla początkujących i najwięcej uwagi poświęcić tym (z mojego punktu widzenia) częściom najbardziej użytecznym i wykorzystywanym do amatorskiego i nie tylko programowania. Zanim zaczniemy poznawać poszczególne kategorie STL musimy poznać tak zwany generalny konspekt przygotowania jej do użycia. Najważniejszymi i niezbędnymi są: dołączanie odpowiednich plików nagłówkowych i korzystanie z przestrzeni nazw. Jeżeli chodzi o pliki nagłówkowe to używamy następującej składni:

#include <iostream>
#include <string>
#include <cstdio>

// zamiast:

#include <iostream.h>
#include <string.h>
#include <stdio.h>

// natomiast jeżeli chcemy używać starej biblioteki z języka C
// ale nie łamiąc nowego stylu to piszemy tak:

#include <cstdlib> // zamiast <stdlib.h>
#include <cstring> // zamiast <string.h>

// przedrostek 'c' np. 'cstring' oznacza bibliotekę języka C

Teraz kwestia dotycząca przestrzeni nazw. Zawartość biblioteki standardowej została “włożona” do przestrzeni nazw po to aby używane tam nazwy np. metod klas nie zastrzegały sobie wyłączności na daną nazwę w obrębie całego programu. Przez to, albo dzięki temu musimy, albo możemy powiadomić kompilator o tym jakiej części chcemy używać. Składnia została przedstawiona poniżej:

// załączamy całą przestrzeń nazw

using namespace std;

// załączmy tylko wybrane elementy cout i endl

using std::cout;
using std::endl;

Oczywiście możemy nie używać dyrektywy using i przed każdym użyciem elementy z biblioteki standardowej zapowiadać zakresem przestrzeni nazw, do której ta należy:

std::cout << 3.4 << std::endl;


Szablon:ProstaNawigacja