如果我有一个结构体,例如:
struct Point4D
{
let x:Double,
y:Double,
z:Double,
w:Double
}
有没有一种高效的方式通过整数索引访问struct
的成员?也就是说
let index:Int = 2
let point:Point4D = Point4D(x: 1, y: 5, z: 3, w: 8)
let component:Double = point [index] // 3
我认为可以通过在Point4D
上定义subscript()
方法并使用switch语句来实现,但这似乎不是很高效。在C中,我相信您可以增加指向第一个结构成员的指针,因为它们都是Double
类型,但Swift不允许这样做...