Я новичок в Objective-C.По сути, я хочу сохранить набор URL-адресов конечных точек в виде строк для использования в моем приложении, но мне нужен другой домен в зависимости от того, находится ли приложение в режиме отладки или нет.Я подумал, что было бы полезно использовать файл заголовка (например, Common.h
) с некоторыми простыми определениями, такими как:
#ifdef DEBUG
#define kAPIEndpointHost @"http://example.dev"
#else
#define kAPIEndpointHost @"http://www.example.com"
#endif
#define kAPIEndpointLatest [kAPIEndpointHost stringByAppendingString:@"/api/latest_content"]
#define kAPIEndpointMostPopular [kAPIEndpointHost stringByAppendingString:@"/api/most_popular"]
Очевидно, что это не работает, так как вы не можете основывать константу наочевидно, значение другой константы.
Каков «правильный» способ сделать это?Будет ли разумнее иметь правильный класс с методами класса, которые возвращают правильные значения конечной точки?
РЕДАКТИРОВАТЬ: Просто чтобы прояснить, строки "Latest" и "MostPopular" основаны на строке хоста - вот с чем у меня больше всего проблем.Компилятору не нравится часть stringByAppendingString
определения #.