Скажем, у меня есть struct
, который может быть любым:
struct Cube {
var x: Int
var y: Int
var z: Int
var width: Int
// ...
}
Как мне создать Set
этих точек, чтобы не было двух объектов с одинаковыми свойствами?
let points: Set<Cube> = Set()
// Type ‘Cube’ does not conform to protocol ‘Hashable’
Но не сразу понятно, как реализовать хеширование. Из того, что я читал, мне нужно сделать хэш-функцию, но это не выглядит легко возможным с количеством свойств, которые у меня есть в структуре.