Осуществить отравление памяти вручную?C++

Программы на C++. Форум разработчиков
Anonymous
Осуществить отравление памяти вручную?

Сообщение Anonymous »


У меня есть структура данных, в которой из соображений производительности выделяется непрерывный фрагмент памяти. Но позже в этой памяти остаются дыры, которые не будут использоваться, инициализироваться или трогаться.

Поскольку индексы во время выполнения очень легко переполнить, в режиме отладки я хотел бы сделать эту память «недоступной», т. е. сделать так, чтобы доступ к ней вел себя как можно ближе к ошибке сегментации.

Я читал об «отравлении памяти», которое можно обнаружить с помощью адресных дезинфицирующих средств. Например, используя ASAN_POISON_MEMORY_REGION из https://github.com/google/sanitizers/wi ... lPoisoning

Однако я не хочу добавлять зависимость к проекту. Есть ли способ реализовать что-то вроде отравления памяти вручную?

Что-то, что работает, скажем, в Linux, с GCC и clang.

Вернуться в «C++»