Udostępnij za pośrednictwem


Konwencje biblioteka języka C++

Biblioteka języka C++ przestrzega dużo tych samych konwencji jako standardowa biblioteka języka c plus kilku więcej opisane tutaj.

Implementacja ma pewną tolerancję w sposób deklaruje typy i funkcje biblioteki C++:

  • Nazwy funkcji w bibliotece c standardowe mogą mieć # extern "C++" lub extern "C" powiązania.Dołączyć odpowiedni nagłówek standardowy C, zamiast deklarować wbudowanego obiektu biblioteki.

  • Nazwa funkcji Członkowskich w klasie biblioteka może mieć dodatkową funkcję podpisów w stosunku do osób wymienionych w niniejszym dokumencie.Możesz mieć pewność, że wywołania funkcji opisanych tutaj zachowuje się zgodnie z oczekiwaniami, ale nie można wiarygodnie podjąć adres funkcji składowej biblioteki.(Typ nie może tego oczekujesz.)

  • Klasa biblioteka może mieć klas podstawowych poznane (niewirtualna).Klasa udokumentowane, pochodzące z innej klasy mogą w rzeczywistości pochodzić z tej klasy za pośrednictwem innych klas nieudokumentowanych.

  • Typ zdefiniowany jako synonim dla pewnego typu integer może być taka sama, jako jeden z kilku typów różne liczby całkowitej.

  • Typ maski mogą być zaimplementowane jako typ integer lub wyliczenia.W obu przypadkach można wykonywać operacje bitowe (takie jak AND i OR) o wartości tego samego typu masek bitowych.Elementy A i B typ maski bitowej wartości niezerowe — są takie, że A & Bjest równa zero.

  • Funkcji biblioteki, która ma specyfikacja wyjątek nie można zgłosić wyjątek dowolnego, chyba, że jego definicję wyraźnie ogranicza taką możliwość.

Z drugiej strony istnieją pewne ograniczenia:

  • Standardowa biblioteka języka c używa makr nie maskowanie.Tylko określoną funkcję podpisów są zarezerwowane, nie nazwy funkcji, same.

  • Nazwa funkcji biblioteki poza klasą nie będzie miał dodatkowe, nieudokumentowanych, funkcja podpisów.Można wiarygodnie podjąć jego adres.

  • Klasy podstawowe i opisane jako wirtualnego funkcji elementów członkowskich są zapewne wirtualnych podczas są opisane jako niewirtualna zapewne niewirtualna.

  • Dwa typy zdefiniowane przez biblioteka języka C++ zawsze są różne, chyba, że dokument ten wyraźnie sugeruje inaczej.

  • Funkcje dostarczane przez bibliotekę, łącznie z wersjami domyślną zastępowalnych funkcji można throw co najwyżej tych wyjątków wymienionych w specyfikacji żadnych wyjątków.Nie destruktory dostarczonych przez bibliotekę generują wyjątki.Funkcje standardowe biblioteki c może propagować wyjątek, gdy qsort wywołania działać porównania, która zgłasza wyjątek, ale one nie inaczej generują wyjątki.

Zobacz też

Informacje

Standardowa biblioteka C++ Przegląd

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