Swift:当我将参数传递给函数时,函数是否复制该参数或使用对该参数的引用

Swift:当我将参数传递给函数时,函数是否复制该参数或使用对该参数的引用,swift,Swift,当我将参数传递给swift函数时,该函数是否复制该参数,或者是否使用对该参数的引用。 对于值类型(struct、enum、tuple),我确信参数已复制到函数中。 问题是关于引用类型(对象),当它们作为参数传递给swift函数时会发生什么?引用类型是通过引用传递的。当您将引用类型传递给swift函数时,您是在传递对该对象的引用,因此,在该方法中对对象所做的任何更改都将影响函数外部的对象。如果将值类型标记为inout参数,则可以对其实现类似的效果 那么,一个in-out引用和一个var Relen

当我将参数传递给swift函数时,该函数是否复制该参数,或者是否使用对该参数的引用。 对于值类型(struct、enum、tuple),我确信参数已复制到函数中。
问题是关于引用类型(对象),当它们作为参数传递给swift函数时会发生什么?

引用类型是通过引用传递的。

当您将引用类型传递给swift函数时,您是在传递对该对象的引用,因此,在该方法中对对象所做的任何更改都将影响函数外部的对象。如果将值类型标记为inout参数,则可以对其实现类似的效果

那么,一个in-out引用和一个var Relence的区别是什么呢?如果一个引用对象作为
inout
传递,那么该对象本身就可以被替换。如果未将其作为
inout
传递,则只能更改其属性。