Bonjour à tous et toutes ,
j'ai une énumération :
Je veux m'en servir pour initialiser une classe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 enum Classe { case Guerrier(nomDuPerso: String,ptDeVie: Int) case Archer(nomDuPerso: String,ptDeVie: Int) case Mage(nomDuPerso: String,ptDeVie: Int) }
Maintenant lorsque je fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 class Personnage { var nom = "" var classe: Classe var arme: Arme var vie = 0 init(arme: Arme,classe: Classe) { self.classe = classe self.arme = arme } func setDegat(hitPoints: Int) { self.vie += hitPoints } func affiche() { print("nom : \(self.nom)") print("points de vie : \(self.vie)") print("dégâts de l'arme : \(self.arme.getDegats())") } }
j'obtiens :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 var perso1 = Personnage(arme: Epee(), classe: .Guerrier(nomDuPerso: "Marcel",ptDeVie: 50)) perso1.affiche()
Comment faire pour initialiser les variables "nom" et "vie" avec la variable "classe" ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 nom : points de vie : 0 dégâts de l'arme : 20
Partager