Enumerările care conțin tipuri de date
Elementele unui enum
pot avea de asemenea unul sau mai multe tipuri de date, permițându-i acestuia să se comporte ca un union din limbajul C.
Atunci când un enum
este utilizat într-un match
, puteți atașa un nume de variabilă fiecărei valori din enum
.
Detalii despre memorie pentru un enum
:
- Spațiul de memorie alocat unei variabile de tip enumerare va fi egal cu spațiul de memorie necesar pentru stocarea celui mai mare element al enumerării. Acest lucru asigură faptul că orice valoare posibilă a enumerării va încăpea în același spațiu din memorie.
- Pe lângă tipul de date al unui element (dacă acesta are un tip), fiecare element are de asemenea asociată o valoare numerică care reprezintă indexul acestuia în enumerare.
Alte detalii:
enum
-ul din Rust este cunoscut și ca uniune etichetată (tagged union).
- Combinarea mai multor tipuri de date pentru a crea unul nou este ceea ce îi face pe oameni să afirme faptul că Rust are tipuri algebrice.