C++/Filozofia STL: Różnice pomiędzy wersjami
Zdzichobot (dyskusja | edycje) m usunięcie kategorii |
Zdzichobot (dyskusja | edycje) zamiana ProstaNawigacja->Subst:Naw |
||
Linia 39: | Linia 39: | ||
<noinclude> |
<noinclude> |
||
{{Nawigacja|C++| |
|||
[[C++:Wskaźniki do elementów składowych|Wskaźniki do elementów składowych]]| |
|||
[[C++:String|String]]| |
|||
}} |
|||
</noinclude> |
</noinclude> |
Wersja z 15:42, 7 sie 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;