Sobes.tech
Junior — Middle

Quelle catégorie de données correspond au type Indirect Enum dans le langage de programmation?

sobes.tech IA

Réponse de l'IA

Dans le langage Swift, le type Enum Indirect appartient à la catégorie des énumérations récursives. Ce sont des énumérations qui peuvent contenir des cas se référant à eux-mêmes, ce qui permet de créer des structures de données avec une nature récursive, comme des arbres ou des listes.

Le mot-clé indirect indique au compilateur que les valeurs associées de cette énumération doivent être stockées de manière indirecte (via une référence), afin d'éviter une récursion infinie lors du calcul de la taille du type.

Exemple :

indirect enum BinaryTree {
    case empty
    case node(Int, left: BinaryTree, right: BinaryTree)
}

let tree = BinaryTree.node(5, left: .empty, right: .node(10, left: .empty, right: .empty))

Ainsi, Enum Indirect est une façon de définir des structures de données récursives en Swift.