Безопасные библиотеки: стандартная библиотека C++
В библиотеки, которые поставляются с помощью Microsoft C++, включая стандартную библиотеку C++ C++, были улучшены, чтобы сделать их более безопасными.
В стандартной библиотеке C++ несколько методов оказались потенциально небезопасными, так как могли привести к переполнению буфера или другим дефектам кода. Использовать эти методы не рекомендуется; вместо них созданы новые, более безопасные методы. Эти новые методы оканчиваются на _s
.
Также были внесены некоторые улучшения для повышения безопасности итераторов и алгоритмов. Дополнительные сведения см. в разделах Проверяемые итераторы, Поддержка в отладке итераторов и _ITERATOR_DEBUG_LEVEL.
Замечания
В следующей таблице перечислены потенциально небезопасные методы стандартной библиотеки C++, а также их более безопасные эквиваленты:
Потенциально небезопасный метод | Более безопасный эквивалент |
---|---|
copy | basic_string::_Copy_s |
copy | char_traits::_Copy_s |
При вызове любого из перечисленных выше потенциально небезопасных методов или при неправильном использовании итераторов компилятор создает Предупреждение компилятора (уровень 3) С4996. Сведения о том, как отключить эти предупреждения, см. в разделе _SCL_SECURE_NO_WARNINGS.