首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从Swift 2.2开始无法访问外部NSString

从Swift 2.2开始无法访问外部NSString
EN

Stack Overflow用户
提问于 2016-03-22 15:38:02
回答 1查看 3.4K关注 0票数 19

自从使用Swift 2.2更新到Xcode 7.3之后,我就无法访问外部Objective-C库中的变量。

从今天开始,我可以访问这些变量:

代码语言:javascript
复制
extern NSString* const DEFAULT_URL;  

这是在预编译的.a框架的Objective-C头文件中定义的。

在我的快速代码中,我只需调用DEFAULT_URL

从Swift 2.2开始,我收到以下错误:

代码语言:javascript
复制
Use of unresolved identifier 'DEFAULT_URL'  

我可以访问这个框架的类和方法,但不能访问extern NSStrings

有什么办法解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-22 21:24:14

@patrickS我之所以这样做是因为一个愚蠢的原因,我的外部常量是在我的.h文件中的@接口中定义的。这似乎使得这个版本的XCode / Clang对Swift代码是私有的。它适用于所有外部常量,而不仅仅是NSString *。

例如:

代码语言:javascript
复制
//In Foo.h
extern const int kBlah

@interface Foo
...
@end

而不是

代码语言:javascript
复制
//In Foo.h
@interface Foo
extern const int kBlah
...
@end
票数 35
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36148598

复制
相关文章

相似问题

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