在swift中使用objective-c方法似乎跨越了swift语言的关键字

我有一个Objective-c方法
-(DeviceVar *)var:(Nsstring*)valid

在objective-c中我简单地使用它:

DeviceVar* rtc = [device var:@"rtc"];

但是在swift中我使用这种方法有问题:

let rtc = device.var("etc")

因为var是我猜的关键字,所以我的问题是如何让它工作.

如果需要,您可以随后在反引号中包含保留字
将它用作方法名称(例如,参见
Use reserved keyword a enum case):
let rtc = device.`var`("etc")

如果您对Objective-C头文件具有写访问权限,那么另一个
选项是为Swift定义不同的方法名称
(比较中的Swift and Objective-C in the Same Project)
“将Swift与Cocoa和Objective-C一起使用”参考):

-(DeviceVar *)var:(Nsstring*)valid NS_SWIFT_NAME(deviceVar(_:));

然后可以从Swift调用

let rtc = device.deviceVar("etc")

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...