首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Swift 2.2:不再导入GCC_PREPROCESSOR_DEFINITIONS常量

Swift 2.2:不再导入GCC_PREPROCESSOR_DEFINITIONS常量
EN

Stack Overflow用户
提问于 2016-03-29 00:47:18
回答 2查看 1.6K关注 0票数 6
EN

回答 2

Stack Overflow用户

发布于 2016-04-06 22:01:25

感谢你指出这个bug,我不会在一段时间内解决这个问题的。如果有任何帮助的话,我最终向Swift添加了一个额外的objc常量bridge,并使用来自swift的桥常量:

代码语言:javascript
复制
// Constants.h
extern NSString *const kDropBoxAPIKey;

// Constants.m
NSString *const kDropBoxAPIKey = DROPBOX_API_KEY;

// xxx-Bridging-Header.h
#import "Constants.h"

然后在Swift中使用桥接密钥

代码语言:javascript
复制
// xx.swift
...
// let auth = DropboxAuth(appKey: DROPBOX_API_KEY) 
let auth = DropboxAuth(appKey: kDropBoxAPIKey)
...
票数 5
EN

Stack Overflow用户

发布于 2016-06-02 19:40:27

你可以在桥接头文件中声明另一个类似的宏。假设我们在预处理定义中有MY_MACRO宏。Swift代码看不到它。在桥接头文件中,我们可以定义另一个宏:

代码语言:javascript
复制
#define MY_MACRO2 MY_MACRO

现在在Swift代码中到处使用MY_MACRO2。当苹果解决这个问题时,你需要将MY_MACRO2重命名为MY_MACRO

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36266789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档