Когда я читал о новом обновлении 4.0.2 для iOS, я хотел знать, что хакеры делают или пытаются делать с переполнением буфера, что после некоторой википедии заинтересовало меня поиграть с malloc и, таким образом, создать мой собственный NSObject".
На самом деле я не планирую использовать это ни в одном из своих приложений, оно предназначено только для обучения и игры с target-c.
И, конечно, как и ожидалось, я столкнулся с некоторыми проблемами.что я не мог решить сам.
для создания моего объекта я делаю:
+ (id)create{ return malloc(sizeof(self)); }
и
- (void)free { free(self); }
При вызове [TestObject create];Я получаю следующие консольные сообщения:
"11.08.10 11:17:31 TestingHeap [2675] *** NSInvocation: предупреждение: объект 0x100002100 класса 'AObject' не реализует hasNotRecognizeSelector: -abort "
Итак, он пытается обработать мой объект как объект NSObject ..?и как мне это решить.
Также при компиляции без Foundation или AppKit я получаю сообщение об ошибке пропущенных символов, в частности __objc_empty_vtable и __objc_empty_cache.Я попытался включить несколько заголовочных файлов из / usr / include / objc /
Заранее спасибо.
Обновление
После ссылки на libobjc Iполучить EXC_BAD_INSTRUCTION при попытке вызвать метод из моего класса.