Как определить, что компилятор в данный момент находится в режиме ARC? - PullRequest
2 голосов
/ 15 января 2012

У меня есть несколько функций inline static C.И я называю коды Objective-C, включая [-release].

. Проблема в том, что я должен скомпилировать этот код как для ARC, так и для целей без ARC.Поэтому я думаю, что мне нужна условная компиляция с помощью предопределенного флага компилятора.Какой флаг мне использовать для этого?

1 Ответ

2 голосов
/ 15 января 2012

С http://lists.apple.com/archives/xcode-users/2011/Aug/msg00252.html:

Проверки компилятора LLVM называются __has_feature. ARC является одним из функции, которые вы можете проверить.

#ifndef __has_feature
// not LLVM Compiler
#define __has_feature(x) 0
#endif

#if __has_feature(objc_arc)
// compiling with ARC
#else
// compiling without ARC
#endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...