我知道在 Swift 中结构是按值传递的,类是按引用传递的。
我想知道我是否创建了一个提供协议的数组存储元素。这些元素是通过值还是引用传递?
它是基于模型一个类或结构的定义吗?
class ClassA: ProtocolA {
// something
}
struct StructA: ProtocolA {
// something
}
var arr: [ProtocolA] = [ClassA(), StructA()]
exampleFunction(arr[0]) // is it passed by reference
exampleFunction(arr[1]) // is it passed by value