1
resposta

Array vazio

Eu criei a classe, mas não entendi o porquê do compilador não ter dado erro na criação do Array como vazio. O Swift por padrão não evita o uso de variáveis vazias?

class Meal {
    var happiness:Int;
    var name:String;
    var items:Array<Item> = []; // O Array vazio é instanciado. Essa variável não aparece no inicializador. Não deveria gerar uma mensagem de erro???

    init(name:String, happiness:Int) {
        self.name = name;
        self.happiness = happiness;
    }
}
1 resposta

Oi Leandro, tudo bem ?

Como você já inicializou o array, ainda que esteja vazio, já está na memória, devido a isso ele não reclama.

Caso você não tivesse atribuido valor, ele reclamaria e solicitaria que você passe-se através do construtor.

Espero ter ajudado.

Abraços