Sobes.tech
Junior — Middle

Quel type de données peut-on créer en utilisant des énumérations indirectes?

sobes.tech IA

Réponse de l'IA

Les énumérations indirectes (indirect enums) en iOS (Swift) permettent de créer des énumérations pouvant contenir des valeurs associées, y compris des structures récursives. Avec elles, il est possible de créer des types de données complexes, comme des arbres ou des expressions.

Exemple : une énumération récursive pour une expression arithmétique :

indirect enum ExpressionArithmetique {
    case nombre(Int)
    case addition(ExpressionArithmetique, ExpressionArithmetique)
    case multiplication(ExpressionArithmetique, ExpressionArithmetique)
}

// Utilisation :
let cinq = ExpressionArithmetique.nombre(5)
let quatre = ExpressionArithmetique.nombre(4)
let somme = ExpressionArithmetique.addition(cinq, quatre)
let produit = ExpressionArithmetique.multiplication(somme, ExpressionArithmetique.nombre(2))

Ainsi, les énumérations indirectes permettent de créer des types de données récursifs et complexes, impossibles à exprimer avec des énumérations classiques.