Xcode Swift 2.2之后无法访问外部NSString
由于使用Swift 2.2更新Xcode 7.3,我无法从外部Objective-C库访问变量 从今天起,我可以访问以下变量:Xcode Swift 2.2之后无法访问外部NSString,xcode,swift,Xcode,Swift,由于使用Swift 2.2更新Xcode 7.3,我无法从外部Objective-C库访问变量 从今天起,我可以访问以下变量: extern NSString* const DEFAULT_URL; 这是在预编译的.a框架的Objective-C头文件中定义的 在我的swift代码中,我只需调用DEFAULT\uURL 自Swift 2.2以来,我得到以下错误: Use of unresolved identifier 'DEFAULT_URL' 我可以访问此框架的类和方法,但无法访
extern NSString* const DEFAULT_URL;
这是在预编译的.a框架的Objective-C头文件中定义的
在我的swift代码中,我只需调用DEFAULT\uURL
自Swift 2.2以来,我得到以下错误:
Use of unresolved identifier 'DEFAULT_URL'
我可以访问此框架的类和方法,但无法访问extern NSStrings
有没有办法解决这个问题?@patrickS我有这个想法是出于愚蠢的原因,我的extern const是在我的.h文件的@interface中定义的。这似乎使得这个版本的XCode/Clang对Swift代码是私有的。它适用于所有外部常量,而不仅仅是NSString* e、 g 而不是
//In Foo.h
@interface Foo
extern const int kBlah
...
@end
我也遇到了同样的问题,在我的例子中,ext字符串位于依赖项管理(cough-pod-cough)的第三方库中。因此,从长远来看,我无法轻松地移动它们而不把一切搞糟 我找到了两种解决方案:
我将这两个解决方案中您认为不那么黑的留给您(我选择了解决方案1,因为我很懒)。我已经更新了这个问题,外部定义在obj-c头文件中。我还构建了一个桥接头。没有,但我现在添加了这个,但这并没有改变任何事情。我有同样的问题。typedef也有同样的问题
//In Foo.h
@interface Foo
extern const int kBlah
...
@end