在Swift中使用Objective-C函数,它接受一个变量的引用

时间:2015-06-01 17:36:51

标签: objective-c swift

我有一个Objective-C函数,我们称之为foo是为了对其他人有用。

something a //Define variable a as a 'something' type
[foo:&a]

我如何将其翻译成swift?

2 个答案:

答案 0 :(得分:1)

如果你想通过引用传递,你可以在函数定义中使用inout表示法

,例如

func test(inout a : Double) {
    //do something
}

var d : Double = 3.5
test(&d)

如果您指的是直接使用某个功能,则会使用您在其他地方使用的相同&variable符号

所以你只需拨打foo(&var)

答案 1 :(得分:0)

如果something是一个类的实例,则在执行时会自动通过引用传递:

foo(a)

如果something是结构的一个实例,它会作为副本传入,您不应该尝试传递它的地址。而是使something成为一个类。