2016-04-10 2 views
0

В настоящее время я создаю фреймворк и разделяю часть своих кодов на фреймворк. В моем коде мне это нравится.iOS Передача препроцессора Макросы от основного проекта до внедренного фрейма

#ifdef DEBUG 
#define SERVER_PREFIX @"http://example1.com/" 

#elif STAGING 
#define SERVER_PREFIX @"http://example2.com/" 

#elif RELEASE 
#define SERVER_PREFIX @"http://example3.com/" 
#endif 

enter image description here

мне нужно отделить тех, в рамках. Если основной проект переключаться между ними, я хочу, чтобы моя инфраструктура также автоматически изменилась. Я не уверен, что это хороший подход и может быть сделано или нет. Как мне это сделать?

ответ

3

Вы не должны приближаться к проблеме с макросами предварительного процессора, вы должны сделать конфигурацию каркаса, чтобы вы действительно передали ему требуемое значение во время выполнения. Это то, что на самом деле делает структуру многоразовой ...

+0

Что делать, если вы хотите ограничить некоторые функции в том случае, если источник строится только с конфигурацией Debug, например. если было что-то, что вы хотели разрешить разработчику с исходным кодом делать/обходить против чего-то, что вы хотели наложить на встроенный, без исходного кода, версию Release. Это моя проблема. –

+0

Sure @VincilBishop вы можете сделать это с помощью макросов препроцессора – Wain

+0

Снова прочитав вопрос и ваш ответ, ваш лучший совет ... –

Смежные вопросы