Udostępnij za pośrednictwem


Użycie nagłówków biblioteka języka C++

Należy dołączyć zawartość standardowego nagłówka nazywając go w dyrektywa include.

#include <iostream>   // include I/O facilities

Można dołączyć standardowych nagłówków w dowolnej kolejności, standardowy nagłówek więcej niż raz lub dwa lub więcej standardowych nagłówków, które określają ten sam makro lub tego samego typu.Nie obejmują standardowy nagłówek w deklaracji.Nie definiują makra, które mają takie same nazwy jak słowa kluczowe, zanim zawierać standardowy nagłówek.

Nagłówek biblioteka języka C++ obejmuje wszelkie inne nagłówki biblioteki C++ musi określać typy potrzebne domen.(Zawsze to jawnie żadnych nagłówków biblioteki C++, które są potrzebne w jednostkę, jednak, żeby źle o jego rzeczywistej zależności). Nagłówek standardowy C nigdy nie zawiera inny standardowy nagłówek.Standardowy nagłówek deklaruje lub definiuje tylko jednostki, które zostały opisane na to, w tym dokumencie.

Każda funkcja w bibliotece jest zadeklarowany w standardowy nagłówek.W odróżnieniu od standardowych c standardowy nagłówek nigdy nie zapewnia makro z taką samą nazwę jak funkcja, która maskuje deklaracji funkcji i uzyskuje ten sam efekt maskowania.Aby uzyskać więcej informacji na temat maskowania makr, zobacz Konwencje biblioteka języka C++.

Wszystkie nazwy innych niż operator delete i operator new w C++ library nagłówki są zdefiniowane w std obszaru nazw, lub w przestrzeni nazw, zagnieżdżone w std obszaru nazw.Odnoszą się do nazwy cin, na przykład jako std::cin.Należy jednak pamiętać, że nazwy makr nie podlegają kwalifikacji nazw, tak aby zawsze zapisywać __STD_COMPLEX bez kwalifikator obszaru nazw.

W niektórych środowiskach tłumaczenia, łącznie z nagłówka Biblioteka języka C++ może Wózek nośny zewnętrznych nazw zadeklarowane w std obszaru nazw w globalnej przestrzeni nazw jak również z poszczególnymi using deklaracje dla każdej nazwy.W przeciwnym razie nagłówek czy nie wprowadzić wszelkie nazwy biblioteki do bieżącego obszaru nazw.

C++ Standard wymaga, aby C standardowych nagłówków stwierdzenie wszystkich zewnętrznych nazw w obszarze nazw std, następnie Wózek nośny do globalnej przestrzeni nazw z osobna using deklaracje dla każdej nazwy.Ale w niektórych środowiskach Tłumacz standardowe C nagłówki nie deklaracje przestrzeni nazw, deklarując wszystkie nazwy bezpośrednio w globalnej przestrzeni nazw.Większość przenośnych sposobem radzenia sobie z obszarów nazw jest w ten sposób, należy wykonać dwie reguły:

  • Zapewne zadeklarować w przestrzeni nazw std nazw zewnętrznych, tradycyjnie zadeklarowaną w <stdlib.h>, na przykład, zawierać nagłówka <cstdlib>.Wiem, że nazwa może być także zadeklarowana w globalnej przestrzeni nazw.

  • Zapewne zadeklarować w globalnej przestrzeni nazw, nazw zewnętrznych zadeklarowane w <stdlib.h>, zawierać nagłówek <stdlib.h> bezpośrednio.Wiem, że nazwa może być także zadeklarowana w przestrzeni nazw std.

W ten sposób aby wywołać std::abort spowodować nieprawidłowe zakończenie, powinny obejmować <cstdlib>.Jeśli chcesz, aby zadzwonić do abort, powinny obejmować <stdlib.h>.

Alternatywnie można napisać deklaracji:

using namespace std;

wszystkie nazwy biblioteki prowadzi do bieżącego obszaru nazw.Jeśli piszesz tej deklaracji natychmiast po wszystkich dyrektyw dołączania, podnieś nazwy w globalnej przestrzeni nazw.Następnie można zignorować uwagi dotyczące nazw w pozostałej części jednostki tłumaczenia.Większość różnic jest również unikać w środowiskach różnych tłumaczeń.

O ile nie postanowiono inaczej, nie może określić nazwy w std obszaru nazw, lub w przestrzeni nazw, zagnieżdżone w std obszaru nazw, w ramach programu.

Zobacz też

Informacje

Standardowa biblioteka C++ Przegląd

Bezpieczeństwo wątków w standardowa biblioteka języka C++