Вопросы по теме 'objective-c-runtime'

Как среда выполнения Objective-C создает корневой метакласс и другие описания классов?
Я пытаюсь реализовать базовую объектно-ориентированную среду выполнения ANSI C и использую Objective-C в качестве руководства. Кажется, они состоят из трех частей. Описание класса, интерфейс класса и реализация класса. Чтобы создать экземпляр...
708 просмотров

Как создать протокол во время выполнения в Objective-C?
Прежде всего, я хочу прояснить, что я не говорю об определении протокола и что я понимаю концепцию @protocol someprotocol - (void)method; @end Я знаю, что среда выполнения Obj-C позволяет создавать классы во время выполнения, а также их...
3451 просмотров

Objective-C: вызов и копирование одного и того же блока из нескольких потоков
Здесь я имею дело с нейронными сетями, но это можно игнорировать, поскольку реальный вопрос касается блоков в Objective-C. Вот моя проблема. Я нашел способ преобразовать нейронную сеть в большой блок, который можно выполнить сразу. Однако это...
1051 просмотров

Как независимо масштабировать оси во время выполнения на NSButton
В Interface Builder вы можете выбрать способ масштабирования изображения кнопки, выбрав «Независимо от осей», «Пропорционально вниз» и т. д. в раскрывающемся списке «Масштабирование». Как я могу получить доступ или изменить этот атрибут NSButton во...
2346 просмотров

Objective-C: предпочтительный способ получения суперкласса экземпляра класса
Мне интересно, какой из двух следующих методов является правильным или предпочтительным для получения суперкласса переменной Class : Class getSuperclass(Class cls) { return [cls superclass]; } Class getSuperclass(Class cls) { return...
8564 просмотров
schedule 24.03.2023

PyObjC и method_exchangeImplementations: сбой. правильное использование?
Я использую PyObjC. PyObjC не предоставляет интерфейс для method_exchangeImplementations , поэтому я пытался использовать эту функцию через ctypes. Я пытался перезаписать windowShouldClose: из какого-то класса оконного контроллера. Мой код:...
377 просмотров

Получить все существующие указатели на объект
Можно ли получить список указателей на указатели на объект c. что-то вроде id **pointers(id object, int *out_count) Довольно сумасшедший, да? знак равно
546 просмотров
schedule 20.01.2023

Может ли methodSignatureForSelector: создать универсальную сигнатуру метода?
Я пытаюсь создать универсальный прокси-сервер, который принимает любой селектор с любым типом аргументов и отправляет вызов RPC по сети. В этом случае сигнатура метода неизвестна, поскольку она может быть создана конечным пользователем произвольно....
666 просмотров
schedule 13.05.2023

Как написать приложение для iOS исключительно на C
Я прочитал здесь Изучить C до Objective-C? Обычно я затем заменяю некоторый код Obj-C чистым кодом C (в конце концов, вы можете смешивать их сколько угодно, содержание метода Obj-C может быть полностью чистым кодом C) Это правда?...
85463 просмотров

Изменить значения перечисления во время выполнения?
Есть ли способ присвоить значения перечислениям во время выполнения в объекте c? У меня есть несколько перечислений, и я хочу, чтобы каждое из перечислений имело определенное значение. Значения можно прочитать из файла xml. Есть ли способ сделать...
12798 просмотров

Как мне получить класс Objective-C для ivar?
У меня есть куча простых NSManagedObject , которые я создаю в модульном тесте. У них есть только один атрибут name типа NSString * . Я всегда даю своему NSManagedObject одно и то же имя entityName и Class . Я хочу избежать написания...
1961 просмотров
schedule 23.12.2022

Почему суперкласс метакласса корневого класса не является указателем NULL?
В среде выполнения Objective-C класс представлен следующей структурой: typedef struct class_t { struct class_t *isa; // Points to the class' meta class struct class_t *super; // Points to the class' super class Cache cache; IMP...
321 просмотров
schedule 30.06.2022

Использование objc_msgSendSuper для вызова метода класса
Я проходил и заменял блокировки @synthesized(self) этим методом void _ThreadsafeInit(Class theClassToInit, void *volatile *theVariableItLivesIn, void(^InitBlock)(void)) { //this is what super does :X struct objc_super mySuper = {...
2818 просмотров
schedule 22.06.2023

Является ли класс NSObject сегодня частью библиотеки времени выполнения Objective-C (вместо того, чтобы быть компонентом Foundation)?
Глядя на версию исходного кода библиотеки времени выполнения Objective-C для Mac OS X 10.8 code , я заметил, что у него есть NSObject.mm файл. Как следует из названия, у него есть реализация класса NSObject , а также встроенный пул...
737 просмотров

NSProxy против NSObject
Я использовал метод swizzling, чтобы обернуть все вызовы методов в класс с некоторыми дополнительными функциями. В частности, я был: Проверка наличия в кеше необходимого объекта для этого вызова метода Если в кеше есть этот объект, верните...
3693 просмотров
schedule 06.03.2023

Какое свойство Objective-C разрешается во время выполнения?
Какое свойство Objective-C разрешается во время выполнения? Будет ли вызов [obj valueForKey:@"property"] всегда давать один и тот же результат? e.g. obj.property
192 просмотров
schedule 02.05.2024

Улучшить производительность для настройки Ivar
Я изменил установщики по умолчанию для класса Objective-C, чтобы разрешить какой-то KVO без фактического добавления наблюдателя к свойству. Это прекрасно работает. Но в некоторых случаях мне нужно присвоить этой системе сотни тысяч свойств. Таким...
393 просмотров
schedule 28.05.2024

В Objective-C, когда создаются объект метакласса и объект класса?
В Objective-C, когда создаются пары классов - объект метакласса и объект класса? Это в начале выполнения приложения или в тот момент, когда вы впервые создаете экземпляр первого объекта класса?
97 просмотров
schedule 20.05.2023

Компилятор Objective-C пропускает определение протокола
Я пишу пару классов, которые используют библиотеку времени выполнения Objective-C. Это включает в себя получение определений протокола во время выполнения на основе их имени. Однако оказывается, что протоколы, которые явно не приняты классом или не...
488 просмотров

Можно ли создавать методы и переменные, устанавливать их во время выполнения в Objective-C?
Например: @implementation MyClass{ NSNumber *something; } Я хотел бы иметь возможность добавить несколько подобных во время выполнения к конкретному объекту (только один экземпляр), а не ко всему классу. В них уже есть указатели на...
95 просмотров