typestar

alloc e init en Objective-C

Nacimiento en dos pasos: la clase asigna, la instancia inicializa.

#import <Foundation/Foundation.h>

int main(void) {
    @autoreleasepool {
        // Two-step birth: the class allocates, the instance initializes.
        NSMutableArray *crate = [[NSMutableArray alloc] init];
        [crate addObject:@"Kind of Blue"];
        NSLog(@"Crate holds %lu", (unsigned long)[crate count]);

        // Class-method constructors wrap the same dance.
        NSMutableArray *wall = [NSMutableArray array];
        [wall addObject:@"A Love Supreme"];

        // Classes are objects too; ask one its name.
        NSLog(@"Built by %@", [crate class]);
    }
    return 0;
}

Cómo funciona

  1. [[NSMutableArray alloc] init] es la creación canónica.
  2. Los constructores de clase como array envuelven la misma danza.
  3. Las clases son objetos: [crate class] responde con una.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
18
Caracteres a escribir
516
Tokens
87
Ritmo de tres estrellas
65 tpm

Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 80 segundos.

Escribe este fragmento

Paso 3 de 3 en Mensajes; paso 6 de 27 en Fundamentos del lenguaje.

← Anterior Siguiente →