Вопросы по теме 'objective-c-runtime'
Как среда выполнения Objective-C создает корневой метакласс и другие описания классов?
Я пытаюсь реализовать базовую объектно-ориентированную среду выполнения ANSI C и использую Objective-C в качестве руководства.
Кажется, они состоят из трех частей. Описание класса, интерфейс класса и реализация класса. Чтобы создать экземпляр...
708 просмотров
schedule
11.10.2022
Как создать протокол во время выполнения в Objective-C?
Прежде всего, я хочу прояснить, что я не говорю об определении протокола и что я понимаю концепцию
@protocol someprotocol
- (void)method;
@end
Я знаю, что среда выполнения Obj-C позволяет создавать классы во время выполнения, а также их...
3451 просмотров
schedule
06.08.2023
Objective-C: вызов и копирование одного и того же блока из нескольких потоков
Здесь я имею дело с нейронными сетями, но это можно игнорировать, поскольку реальный вопрос касается блоков в Objective-C. Вот моя проблема. Я нашел способ преобразовать нейронную сеть в большой блок, который можно выполнить сразу. Однако это...
1051 просмотров
schedule
12.04.2022
Как независимо масштабировать оси во время выполнения на NSButton
В Interface Builder вы можете выбрать способ масштабирования изображения кнопки, выбрав «Независимо от осей», «Пропорционально вниз» и т. д. в раскрывающемся списке «Масштабирование». Как я могу получить доступ или изменить этот атрибут NSButton во...
2346 просмотров
schedule
02.05.2022
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 просмотров
schedule
21.05.2022
Получить все существующие указатели на объект
Можно ли получить список указателей на указатели на объект 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 просмотров
schedule
22.07.2023
Изменить значения перечисления во время выполнения?
Есть ли способ присвоить значения перечислениям во время выполнения в объекте c? У меня есть несколько перечислений, и я хочу, чтобы каждое из перечислений имело определенное значение. Значения можно прочитать из файла xml. Есть ли способ сделать...
12798 просмотров
schedule
19.01.2023
Как мне получить класс 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 просмотров
schedule
26.12.2022
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 просмотров
schedule
18.09.2022
Можно ли создавать методы и переменные, устанавливать их во время выполнения в Objective-C?
Например:
@implementation MyClass{
NSNumber *something;
}
Я хотел бы иметь возможность добавить несколько подобных во время выполнения к конкретному объекту (только один экземпляр), а не ко всему классу. В них уже есть указатели на...
95 просмотров
schedule
13.06.2023