iOS头文件中如何在宏里引用已有的宏

一般我们在开发环境中经常会有这样的需求,如果有不是很多的接口的话,一般会这样写

#define kLoginURLStr                @"http://test.yunlu6.com/api/v1/login"
#define kLogoutURLStr               @"http://test.yunlu6.com/api/v1/logout"
复制代码

但是 一般 公司 接口少则几十个,多则上百个,要是将来改的话,会稍显麻烦,且容易出错,于是会有下面优化的写法: #define kTestHostName @"test.yunlu6.com" #define kLoginURL @"" kTestHostName@"/api/v1/login" #define kLogoutURLStr @"" kTestHostName@"/api/v1/logout" 但是很多公司的服务器环境经常会变动,因此,我们还需要考虑到切换域名的情况,于是下面就会写出最终的写法 #define kTestHostName @"test.yunlu6.com" #define kDevelopHostName @"develop.yunlu6.com" #define kHostName kDevelopHostName

#define kLoginURL                    @"" kHostName@"/api/v1/login"
#define kLogoutURLStr                @"" kHostName@"/api/v1/logout"
复制代码

以后就只需要更改这一行宏就可以了 #define kHostName kDevelopHostName/kTestHostName/kOtherHostName

注:@"" kTestHostName@"/api/v1/login"中 kTestHostName前面必须要有空格用来区分字面量引号"和标志符kTestHostName,否则在编译时候会报错, Invalid suffix on literal; C++11 requires a space between literal and identifier,好的,一切编译正常!

转载于:https://juejin.im/post/5c19fa5ae51d451cdc394100

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值