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

Z Wikibooks, biblioteki wolnych podręczników.
< C++
Usunięta treść Dodana treść
rv
Linia 24: Linia 24:
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:
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
// załączamy całą przestrzeń nazw:
using namespace std;
using namespace std;
// załączmy tylko wybrane elementy cout i endl
// załączmy tylko wybrane elementy cout i endl:
using std::cout;
using std::cout;

Wersja z 20:47, 29 maj 2009

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 się 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 <stdio>

// 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 elementu z biblioteki standardowej zapowiadać zakresem przestrzeni nazw, do której ta należy:

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