在目标C中使用#define并在swift类中访问

沙巴兹·阿克拉姆(Shahbaz Akram)

我已经#define baseUrl [NSString stringWithFormat:@"%@api/v4", MAINURL]在目标c类中定义了,并且可以访问项目中的任何地方。但是现在我已经在退出目标C项目中创建了swift文件,并想以swift访问baseurl但收到错误。

Use of unresolved identifier 'baseUrl'

怎么解决呢?

mag_zbc

将Objective-C宏导入Swift并不总是可行。根据文件

Swift会自动将使用#define指令声明的简单,类似于常量的宏作为全局常量导入。当宏使用文字,字符串,浮点数或整数值,或者在文字或先前定义的宏之间使用+,-,>和==等运算符时,将导入宏。

比简单常量定义更复杂的C宏在Swift中没有对应的宏。

在您的情况下,一种替代方法是使用返回由宏定义的值的函数

// .h file
#define baseUrl [NSString stringWithFormat:@"%@api/v4", MAINURL]
+ (NSString*) BaseUrl;

// .m file
+ (NSString*) BaseUrl { return baseUrl }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在目标C和Swift中使用Singleton类

在桥接目标 C 文件中使用 Swift 类

在目标c中访问类方法。使用的是self还是classname?

从目标c中的类外部访问属性

目标 c 超类中的受保护变量在 swift 子类中不可访问

无法访问包含在框架中的 Swift 4.2 类到目标 C 项目中

在目标C中使用Swift共享实例

如何在目标C中使用具有通用类型的Swift类

如何在Swift项目中使用目标C框架类?

如何在C ++中的类外部定义lambda函数并在类中使用它?

在Swift类中扩展通用目标C类

在C ++中使用nullptr访问类的成员

在目标 c 中使用 swift 中定义的闭包时,弱自我与自我

使用** void参数从swift访问目标c函数

从类名中获取数字并在变量中使用它

在目标C类中返回元组的Swift方法

如何在 swift 类中实现目标 C 协议?

在Objective-C中使用Swift类

目标 C:如何访问 AppDelegate 中另一个类中声明的类?

从Ant访问Java类公共成员变量,并在构建任务中使用它

从HTML类内部访问Ruby变量并在JS函数中使用它

添加使用swift类的目标c类来桥接头文件Projectname_swift.h

Swift类使用两个在不同目标中具有相同名称的Objective C文件

创建一个 C++ 类并在另一个包含 ndk android 中的 JNI 方法的 C++ 类中使用该类

将数组声明为类的属性,并在Swift中使用它

如何从一个类访问变量并在另一个类中使用它?

在C ++中使用多态性访问类的孙子

重载operator()并在类中使用

无法将类(Swift)用于目标C