«Личный» - это тип, который недопустим в данном контексте.

Следующее работает в Windows (кто-то предложил это раньше):

static void copy (void * target, const void * source, int size) {__try {CopyMemory (target, source, size); } __except (EXCEPTION_EXECUTE_HANDLER) {doSomething (- whatever--); }}

Функция должна быть статичной, автономной или статической для некоторого класса. Чтобы проверить только на чтение, скопируйте данные в локальный буфер. Чтобы протестировать запись без изменения содержимого, напишите их. Вы можете проверить только первые / последние адреса. Если указатель недействителен, управление будет передано в «doSomething», а затем вне скобок. Просто не используйте ничего, требующее деструкторов, например CString.

23
задан ᴍᴀᴛᴛ ʙᴀᴋᴇʀ 4 August 2017 в 17:45
поделиться