Как динамически добавить метод в класс в Objective-C? - PullRequest
4 голосов
/ 19 декабря 2011

Я понимаю, что основным преимуществом Objective-C перед C ++ является его способность отправлять сообщения объектам вместо вызова его методов.Во-вторых, вам разрешено динамически добавлять метод к объектам.

Предположим, это мой объект:

@interface MyClass : NSObject
{}

- sayHello;

@end

Я знаю, что мой код ниже будет работать, даже если - sayGoodbye не определенно кто-то может закончить этот код и продемонстрировать, как Objective-C может добавлять методы к объектам во время выполнения?

MyClass* o = [[MyClass alloc] init];

[o sayHello  ];
[o sayGoodbye];
[o release   ];

1 Ответ

2 голосов
/ 19 декабря 2011

Ссылка на время выполнения задачи c - это то, что вам нужно здесь:

Ссылка на время выполнения Objective C

, в частности, посмотрите на следующий метод: class_addMethod

...