Если вы используете Visual C ++ 2010 (и, возможно, более ранние версии), то вы можете включить безопасную отладку SCL и итератор, используя эти два макроса:
#define _SECURE_SCL 1
#define _HAS_ITERATOR_DEBUGGING 1
В других стандартных библиотеках это тоже может быть.
Редактировать: Как и было предложено, в VC2010 есть один макрос, то есть _ITERATOR_DEBUG_LEVEL
, который имеет 3 уровня, определенных следующим образом:
#if _HAS_ITERATOR_DEBUGGING
#define _ITERATOR_DEBUG_LEVEL 2
#elif _SECURE_SCL
#define _ITERATOR_DEBUG_LEVEL 1
#else
#define _ITERATOR_DEBUG_LEVEL 0
#endif