Las clases son referencias en Swift
Dos nombres, un objeto; === pregunta por identidad.
// Classes are reference types: two names, one object.
final class RaceCommittee {
var flagsFlying: [String] = []
func hoist(_ flag: String) {
flagsFlying.append(flag)
}
}
let committee = RaceCommittee()
let sameCommittee = committee
committee.hoist("P")
sameCommittee.hoist("AP")
// Both names see both flags -- there is only one committee.
print("Flags: \(committee.flagsFlying)")
print("Same object: \(committee === sameCommittee)")
Cómo funciona
final classrenuncia a la herencia que no necesita.- Ambos nombres alcanzan la misma instancia — ambas banderas aparecen.
===compara identidad donde==compararía valores.
Palabras clave y builtins usados aquí
Stringclassfinalfuncletprintvar
El intento, en números
- Líneas
- 17
- Caracteres a escribir
- 438
- Tokens
- 84
- Ritmo de tres estrellas
- 65 tpm
Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 78 segundos.
Paso 2 de 3 en Structs y clases; paso 17 de 27 en Fundamentos del lenguaje.