Vous devez surcharger votre classe description
propriété :
func description() -> String {
return "Business name: \(self.name), address: \(self.address), etc."
}
où vous imprimez toutes les propriétés de YLPBusiness
comme vous le souhaitez.
Vous pouvez résoudre votre problème mentionné dans les commentaires en transformant votre méthode en propriété :
public override var description: String {
return "Business name: \(self.name), address: \(self.address), etc."
}
Cela s'est produit parce que Swift a détecté des divergences entre la surcharge et la surcharge dans le système de types Swift et le comportement effectif vu via le runtime Objective-C.