Ios 如何在宏(定义)中使用if-else?
我应该将Live和Dev URL分开。 所以,我写了这个代码Ios 如何在宏(定义)中使用if-else?,ios,objective-c,Ios,Objective C,我应该将Live和Dev URL分开。 所以,我写了这个代码 #define _APP_MODE @"real" #if APP_MODE == dev #define _BASE_URL @"http://devmall.aaa.com/m/app/" #define _URL_FROM_SAFARI @"http://devmall.safari.com" #else #define _BASE_URL @"http://m.aaa.com/m/app/" #define _URL_FRO
#define _APP_MODE @"real"
#if APP_MODE == dev
#define _BASE_URL @"http://devmall.aaa.com/m/app/"
#define _URL_FROM_SAFARI @"http://devmall.safari.com"
#else
#define _BASE_URL @"http://m.aaa.com/m/app/"
#define _URL_FROM_SAFARI @"http://m.safari.com"
但它总是返回dev_url
确保URL由APP_模式分隔的最佳方法是什么?字符串在objC预处理器AFAIK中不起作用 。。。另见 我通常会使用整数
#import <Foundation/Foundation.h>
#define DEV 0
#define REAL 1
#define APP_MODE REAL
#if APP_MODE == DEV
#define BASE_URL @"http://devmall.aaa.com/m/app/"
#define URL_FROM_SAFARI @"http://devmall.safari.com"
#else
#define BASE_URL @"http://m.aaa.com/m/app/"
#define URL_FROM_SAFARI @"http://m.safari.com"
#endif
int main(int argc, char *argv[]) {
@autoreleasepool {
NSLog(BASE_URL);
}
}
注意:去掉所有奇怪的下划线:[如果可以的话]你不能这样做-这是编译器检查