Udostępnij za pośrednictwem


Bezpieczne biblioteki: Standardowa biblioteka C++

Wprowadzono kilka ulepszeń bibliotek, które są dostarczane z językiem Microsoft C++, w tym standardową biblioteką języka C++, aby zapewnić im większe bezpieczeństwo.

Kilka metod w standardowej bibliotece języka C++ zostało zidentyfikowanych jako potencjalnie niebezpieczne, ponieważ mogłoby to prowadzić do przekroczenia buforu lub innej wady kodu. Stosowanie tych metod jest zniechęcane, a nowe, bezpieczniejsze metody zostały utworzone w celu ich zastąpienia. Wszystkie te nowe metody kończą się na ._s

Wprowadzono również kilka ulepszeń w celu zwiększenia bezpieczeństwa iteratorów i algorytmów. Aby uzyskać więcej informacji, zobacz Sprawdzone iteratory, Obsługa iteratora debugowania i _ITERATOR_DEBUG_LEVEL.

Uwagi

W poniższej tabeli wymieniono metody standardowej biblioteki języka C++, które są potencjalnie niebezpieczne, a także ich bezpieczniejsze odpowiedniki:

Potencjalnie niebezpieczna metoda Bezpieczniejszy odpowiednik
kopiować basic_string::_Copy_s
kopiować char_traits::_Copy_s

Jeśli wywołasz dowolną z potencjalnie niebezpiecznych metod powyżej lub jeśli używasz iteratorów niepoprawnie, kompilator wygeneruje ostrzeżenie kompilatora (poziom 3) C4996. Aby uzyskać informacje na temat wyłączania tych ostrzeżeń, zobacz _SCL_SECURE_NO_WARNINGS.

W tej sekcji

_ITERATOR_DEBUG_LEVEL

_SCL_SECURE_NO_WARNINGS

Zaznaczone iteratory

Obsługa iteratora debugowania

Zobacz też

Standardowa biblioteka C++ — przegląd