Del curso: Domina Swift: Nivel 2
Modificar propiedades de structs en métodos de instancia - Tutorial de Swift
Del curso: Domina Swift: Nivel 2
Modificar propiedades de structs en métodos de instancia
Modificar propiedades de tipos struct en métodos de instancia. Empiezo haciendo un struct Punto con dos propiedades: x e y. Quiero añadir dos funciones que se van a llamar pasoEnX y lo que va a hacer es sumar 1 en la variable x y lo mismo para la variable y. Copiamos, ponemos «y» y obtenemos un error, porque los structs son tipos valor y por defecto sus propiedades no pueden ser modificadas desde los métodos de instancia. Solucionar este inconveniente es supersencillo. De hecho, Xcode ya nos recomienda añadir la palabra mutating. Hacemos Fix y de nuevo Fix, y ya estaría. Estos métodos nos permiten modificar las variables x e y de Punto. Vamos a crear una variable, puntoC, de tipo Punto, y ya podemos hacer puntoC.pasoEnX y mostramos puntoC. Ojo porque, cuando creas un struct, puedes crearlo como constante o como variable. Si lo creas como una constante, no vas a poder cambiar el valor de sus propiedades, aunque estas sean variables. Por ello, Swift no deja crear métodos que cambien sus propiedades, a menos que tú se lo indiques explícitamente con mutating. Vamos a ver si creamos una constante puntoD de tipo Punto y hacemos puntoD.pasoEnY, por ejemplo, Xcode nos va a avisar que esto no es posible, porque estamos ante una constante.
Contenido
-
-
-
(Bloqueado)
Structs vs. clases5 min
-
(Bloqueado)
Diferencia entre los operadores "===" y "=="3 min 49 s
-
(Bloqueado)
Cuál es la diferencia entre los observadores didset y willset de una propiedad2 min 17 s
-
(Bloqueado)
Qué son los property wrappers2 min 47 s
-
(Bloqueado)
Cómo añadir valores iniciales a propiedades de envoltura (wrapper property)3 min 26 s
-
(Bloqueado)
Una variable que es de tipo wrapper. ¿Puedo acceder al valor exacto asignado a la variable?1 min 59 s
-
(Bloqueado)
Variables y constantes static en Swift: Propiedades de tipo4 min 21 s
-
Modificar propiedades de structs en métodos de instancia2 min 11 s
-
(Bloqueado)
Cuál es la diferencia entre una variable static y una variable class1 min 53 s
-
(Bloqueado)
Herencia de clases. ¿Cómo crear una subclase?4 min 9 s
-
(Bloqueado)
No puedo acceder a los inicializadores por defecto de un struct. ¿Por qué?2 min 44 s
-
(Bloqueado)
Diferencia entre referencias weak y unowned5 min 11 s
-
(Bloqueado)
KeyPaths: Ordenar un array de structs o clases2 min 46 s
-
(Bloqueado)
Con un array de structs, ¿cómo obtener un array de una de sus propiedades?1 min 12 s
-
(Bloqueado)
-
-
-
-