Я использую MagicalRecord + CocoaLumberjack в своем проекте. Волшебная запись объявляет ddLogLevel
(уровень отладки/логирования) следующим образом:
extern int ddLogLevel
так что это означает, что я должен объявить эту переменную позже сам, что я и делаю.
Теперь рассмотрим документацию Lumberjack (https://github.com/robbiehanson/CocoaLumberjack/wiki/DynamicLogLevels) Я хотел бы объявить эту переменную статической, чтобы я мог динамически изменять уровень отладки на уровне класса. Если я объявляю ddLogLevel
как static int в AddDelegate
, компилятор жалуется (статическое объявление следует за нестатическим объявлением), что имеет смысл, но как я должен объявить его статическим?
Единственный способ, которым я смог заставить это работать, - это объявить ddLogLevel
в AppDelegate
как обычный int
, затем в классах, в которых я хочу иметь другой уровень журнала, я снова объявляю переменную, но только в своем интерфейсе:
@interface MyClass () {
int ddLogLevel;
}
Это работает, но было бы здорово, если бы я мог объявить ddLogLevel
статическим... есть ли конкретное место, где я могу объявить его статическим и упростить отладку, не объявляя его каждый раз, когда я хочу изменить уровень отладки? динамически?