Я хочу, чтобы получить что-то вроде:Как создать экземпляр класса object-c по имени?
#define weaken(object) ...
----
ClassABCD * abcd = [ClassABCD new];
weaken(abcd);
weakAbcd.tag = 0;
----
У меня есть код ниже:
#define weaken(x) __weak typeof(x) weak##x = x
Но можно использовать только "weakabcd", а не "weakAbcd". Любая идея, почему и как ее исправить?
Вы пытаетесь создать экземпляр некоторого класса, передав строку? Вот почему я интерпретирую строку темы – Chris
Я пробовал, но не смог. Итак, я пришел сюда, чтобы спросить –
Я не знаю, можете ли вы делать то, что хотите (макрос, который заглаживает первую букву перед ее префиксом 'слабый'), но вы всегда можете рассмотреть другую реализацию, макрос' weakify': http://stackoverflow.com/a/27280374/1271826 – Rob