我正在尝试找出在Swift中引用简单类型的基本方法。
在C语言中,这没有问题:
int a = 42;
int* refA = &a;
*refA = 43;
// At this point, a is 43
在Swift中,看来我做不到。
var a:Int = 42
println ( a )
// var aRef:Int = &a // Nope.
// var aRef:Int& = &a // Nah.
// inout var:Int aRef = &a // Nyet
// var inout:Int aRef = &a // Non
// var aRef:Int* = &a // What are you, stupid, or stubborn?
//
// aRef = 43 // If any of the above worked, I could do this.
println ( a ) // How can I get this to print "43"?
我在文档中找不到任何可以执行此操作的内容。我知道inout作为函数参数修饰符,但我希望能够在函数之外执行此操作。
我要这样做有一些基本原因。声明所有内容的类会带来一些开销(主要是计划和编写,而不是执行时间)。
在Swift中,值不能通过引用传递(inout参数除外),这是使它成为“无C的Object-C”的原因之一。您可能不得不考虑语言的可能性和限制来重新考虑您的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句