Muy buen artículo Bernardino Guerrero Ibarra. 👏🏼👏🏼👏🏼
Complementando un poco más, las propiedades de un struct no pueden mutar o cambiar una vez creada una instancia…a menos que se cree una función marcada con la palabra mutating y en su implementación cambie el valor de la propiedad.
Otra diferencia es que las propiedades de un Struct no pueden ser ‘recursivas’ o dicho de otra manera no pueden ser del mismo tipo de Struct. Por ejemplo, el siguiente código no compilaría:
struct Node {
var left : Node
var right: Node
}
El único value type que puede ser recursivo son las enumeraciones marcados como indirect… pero ese es otro cantar :v