Junior — Middle
A que categoria de dados corresponde o tipo Indirect Enum na linguagem de programação?
sobes.tech IA
Resposta da IA
No linguagem Swift, o tipo Enum Indirect pertence à categoria de enumerações recursivas. São enumerações que podem conter casos que se referem a si mesmos, permitindo criar estruturas de dados com natureza recursiva, como árvores ou listas.
A palavra-chave indirect indica ao compilador que os valores associados dessa enumeração devem ser armazenados de forma indireta (por meio de uma referência), para evitar recursão infinita ao calcular o tamanho do tipo.
Exemplo:
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))
Assim, Enum Indirect é uma maneira de definir estruturas de dados recursivas em Swift.