C ++ Oppregning

I denne artikkelen vil du lære å jobbe med oppregning (enum). Du vil også lære hvor enums ofte brukes i C ++ programmering.

En oppregning er en brukerdefinert datatype som består av integrerte konstanter. For å definere en oppregning brukes nøkkelordet enum .

 enum sesong (vår, sommer, høst, vinter);

Her er navnet på opptellingen sesong.

Og vår, sommer og vinter er verdier av typen sesong.

Som standard er våren 0, sommeren er 1 og så videre. Du kan endre standardverdien til et enum-element under erklæringen (om nødvendig).

 enum sesong (vår = 0, sommer = 4, høst = 8, vinter = 12);

Oppregnet typedeklarasjon

Når du oppretter en nummerert type, opprettes bare blåkopi for variabelen. Slik kan du lage variabler av enum-type.

enum boolsk (falsk, sant); // innvendig funksjon enum boolsk sjekk;

Her enum booleanopprettes en variabel sjekk av typen .

Her er en annen måte å erklære samme sjekkvariabel ved å bruke annen syntaks.

 enum boolsk (falsk, sann) sjekk; 

Eksempel 1: Oppregningstype

 #include using namespace std; enum week ( Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday ); int main() ( week today; today = Wednesday; cout << "Day " << today+1; return 0; ) 

Produksjon

 Dag 4

Eksempel2: Endring av standardverdier for Enums

 #include using namespace std; enum seasons ( spring = 34, summer = 4, autumn = 9, winter = 32); int main() ( seasons s; s = summer; cout << "Summer = " << s << endl; return 0; )

Produksjon

 Sommer = 4

Hvorfor brukes enums i C ++ programmering?

En enum-variabel tar bare én verdi av mange mulige verdier. Eksempel for å demonstrere det,

 #include using namespace std; enum suit ( club = 0, diamonds = 10, hearts = 20, spades = 3 ) card; int main() ( card = club; cout << "Size of enum variable " << sizeof(card) << " bytes."; return 0; ) 

Produksjon

 Størrelse på enum variabel 4 byte.

Det er fordi størrelsen på et helt tall er 4 byte .;

Dette gjør enum til et godt valg å jobbe med flagg.

Du kan utføre den samme oppgaven ved å bruke C ++ strukturer. Å jobbe med enums gir deg imidlertid effektivitet og fleksibilitet.

Hvordan bruke enums for flagg?

La oss ta et eksempel,

 enum designFlags ( ITALICS = 1, BOLD = 2, UNDERLINE = 4 ) button; 

Anta at du designer en knapp for Windows-applikasjon. Du kan stille inn flaggene ITALIA, FETT og UNDERSTREKTE for å arbeide med tekst.

Det er en grunn til at alle integrerte konstanter er kraften til 2 ovenfor pseudokode.

 // I binær ITALIA = 00000001 FETT = 00000010 UNDERSTREKNING = 00000100 

Siden integralkonstantene er kraften til 2, kan du kombinere to eller flere flagg samtidig uten å overlappe ved hjelp av bitvis ELLER | operatør. Dette lar deg velge to eller flere flagg samtidig. For eksempel,

 #include using namespace std; enum designFlags ( BOLD = 1, ITALICS = 2, UNDERLINE = 4 ); int main() ( int myDesign = BOLD | UNDERLINE; // 00000001 // | 00000100 // ___________ // 00000101 cout << myDesign; return 0; ) 

Produksjon

 5

Når utgangen er 5, vet du alltid at fet og understreket brukes.

Du kan også legge til flagg til dine behov.

 hvis (myDesign & ITALICS) (// kode for kursiv)

Her har vi lagt kursiv til designet vårt. Merk, bare kode for kursiv er skrevet inne i if-setningen.

Du kan oppnå nesten hva som helst i C ++ programmering uten å bruke oppføringer. Imidlertid kan de være ganske hendige i visse situasjoner. Det er det som skiller gode programmerere fra flotte programmerere.

Interessante artikler...