【发布时间】:2017-07-05 16:27:49
【问题描述】:
我再次开始编写 Objective-C 代码,并试图在 Objective-C 中找到与 Swift 的 inout 参数表示法等效的方法。
func swapTwoInts(_ a: inout Int, _ b: inout Int) {
let temporaryA = a
a = b
b = temporaryA
}
到目前为止,我了解到:1.inout 与 objc 不兼容。 2.objc 根本没有这样的语言特性。
但是,当我设计我的 API 时,我希望明确此方法正在修改其参数。在Objective-C中有什么好的方法来完成这个吗?谢谢!
【问题讨论】:
-
参见stackoverflow.com/a/3835935/1187415 示例:您可以在C 中传递指针。
-
首先,除非您有充分的理由,否则请避免使用
inout参数,但在Objective-C 中(如在C 中)您将传递一个指向变量的指针。
标签: objective-c swift