Как определить, был ли Swift скомпилирован с Оптимизацией

Как некоторые из вас могут знать, что при полностью запущенном режиме Debug swift может быть очень медленным. Есть ли способ распечатать сообщение в коде или графическом интерфейсе, чтобы сообщить мне, если я как-то забыл его правильно скомпилировать. Я работаю в смешанном режиме, поэтому, если кто-то может дать мне код Objc и Swift, который будет супер-потрясающим.

Спасибо!

+8
источник поделиться
2 ответа

Я не думаю, что вы можете обнаружить это во время выполнения, но вы можете использовать макрос препроцессора DEBUG (в Objective-C), который по умолчанию задан в конфигурации Debug:

#ifdef DEBUG
NSLog(@"I'm in debug mode!");
#endif

Это предполагает, что вы не компилируете без оптимизации в конфигурации Release: -)

Если вы хотите проверить, что в Swift вам необходимо определить Конфигурация сборки, добавив -D DEBUG в "Другие быстрые флаги" для отладки конфигурации только в настройках сборки. Затем вы можете проверить эту конфигурацию, если #if:

#if DEBUG
println("I'm in debug mode!")
#endif
+10
источник

Вы можете использовать схемы Xcode для добавления флага в качестве аргумента или переменных среды - вы можете проверить его с помощью NSProcessInfo - либо -arguments, либо -environment.

В Xcode перейдите в "Продукт" > "Схема" > "Редактировать схему" в строке меню, выберите "Выполнить" и на вкладке "Аргументы" добавьте либо аргумент, либо переменную среды.

0
источник

Посмотрите другие вопросы по меткам или Задайте вопрос