Ratkaistu: enum kiinteillä arvoilla

Viimeisin päivitys: 09/13/2023
Kirjoittaja: Rust SourceTrail

Rust-ohjelmoinnissa yksi suosittu ominaisuus, joka tuo täysin uutta dynamiikkaa tietojen käsittelyyn, on luettelointi, jota usein kutsutaan nimellä "enum". Enumien avulla meillä on kätevää määritellä tyyppi luettelemalla sen mahdolliset muunnelmat, jolloin ohjelmoijat voivat tallentaa erillisiä arvoja erityyppisillä tiedoilla. Tämä tietorakenne sopii erinomaisesti tietotyyppien luomiseen, joka sisältää erilaisia ​​kelvollisia syötteitä, kuten merkkijonoja, merkkejä, kokonaislukuja jne.

Enumit toteutetaan Rustissa ilmoittamalla ne avainsanalla "enum", jota seuraa sekä enumin nimi että muunnelmat. Entä jos haluaisimme luoda enumin kiinteillä arvoilla?

Enumeille voidaan lopulta antaa kiinteitä arvoja antamalla kullekin muunnelmalle vastaava kokonaislukuarvo. Tämä on erityisen hyödyllistä, kun haluat määrittää enum-muunnelmille tiettyjä arvoja tietojen käsittelyn tai loogisten toimintojen helpottamiseksi.

Enumien käyttöönotto kiinteillä arvoilla

Enumille voidaan antaa kiinteät arvot määrittelemällä se seuraavasti:

enum CustomValue {
yksi = 1,
kaksi = 2,
kolme = 3,
}

Tässä tapauksessa meillä on luettelo nimeltä 'CustomValue', jossa on kolme muunnelmaa: 'One', 'Two' ja 'Three'. Jokaiseen muunnelmaan liittyy kiinteät arvot 1, 2 ja 3.

Kiinteiden arvojen määrittäminen enumeille on kätevä työkalu, kun hallitaan erityyppisiä tietoja, mikä parantaa koodin luettavuutta ja kestävyyttä.

Koodin yksityiskohtainen erittely

Vaikka kiinteitä arvoja sisältävä enum-ilmoitus on yksinkertainen, se sisältää paljon dataa ja manipulointitehoa. Puretaan se:

enum CustomValue {
yksi = 1,
kaksi = 2,
kolme = 3,
}

  • Avainsanaa 'enum' käytetään ilmoittamaan enum, jota seuraa sen nimi. Tässä sen "CustomValue".
  • Vaihteet 'One', 'Two' ja 'Three' määritellään aaltosulkeissa {}.
  • Jokaiselle versiolle on määritetty kiinteä arvo '='-operaattorilla. Tässä tapauksessa 1, 2 ja 3.

Nyt CustomValue-tyypin arvo voi olla mikä tahansa näistä muunnelmista, ja se sisältää myös siihen liittyvän arvon.

Integroimalla kiinteitä arvoja sisältävien enumien käytön Rust-ohjelmiisi, hyödynnät ohjelmistokomponenttia tehokkaamman ja tiiviimmän esityksen monimutkaisista tiedoista.

Muita kirjastoja tai toimintoja, joissa on enumi

Vaikka tämä on hyvä lähtökohta ymmärtää ja käyttää kiinteitä arvoja sisältäviä enumeita, Rust tarjoaa lisää kirjastoja ja menetelmiä kokemuksen rikastamiseksi. Yksi tällainen kirjasto on "strum", joka tarjoaa joukon makroja enumien kanssa työskentelemiseen. Mitä tulee funktioihin, 'to_string()' ja 'from_str()' voidaan käyttää yhdessä enumien kanssa tietojen käsittelyyn.

Yhteenvetona voidaan todeta, että kiinteitä arvoja sisältävät enumit Rustissa tarjoavat ohjelmoijille tehokkaan mutta joustavan tietorakenteen, jota voidaan mukauttaa käsittelemään monenlaisia ​​skenaarioita ja tietovaatimuksia. Tämä kyky käsitellä ja esittää monipuolista dataa ytimekkäästi on yksi monista syistä, miksi Rust on edelleen suosittu valinta kehittäjien keskuudessa.

Enumien maailma Rustissa on niin laaja, että olemme vasta raapuneet pintaa täällä. Mutta ottaen huomioon vivahteet ja apuohjelmat, jotka on kääritty tähän yhteen ominaisuuteen, ei ole yllätys, että todellista Rust-ohjelmointikykyä voi saavuttaa hallitsemalla tällaisia ​​edistyneitä rakenteita – kiinteitä arvoja sisältävät enumit ovat yksi niistä.

Sukella siis Rust-universumiin, tutki näitä dynaamisia ominaisuuksia ja valmistaudu kuvittelemaan uudelleen tapa, jolla olet koodannut tähän asti!

Related viestiä: