C ++ surašymas

Šiame straipsnyje jūs išmoksite dirbti su išvardijimu (enum). Be to, sužinosite, kur „C ++“ programose dažniausiai naudojamos „enums“.

Surašymas yra vartotojo apibrėžtas duomenų tipas, kurį sudaro vientisos konstantos. Apibūdinimui apibrėžti naudojamas raktinis žodis enum .

 enum sezonas (pavasaris, vasara, ruduo, žiema);

Čia išvardijimo pavadinimas yra sezonas.

Pavasaris, vasara ir žiema yra tipo sezono vertybės.

Pagal numatytuosius nustatymus pavasaris yra 0, vasara yra 1 ir pan. Deklaravimo metu galite pakeisti numatytąją „enum“ elemento vertę (jei reikia).

 enum sezonas (pavasaris = 0, vasara = 4, ruduo = 8, žiema = 12);

Surašyta tipo deklaracija

Kai kuriate išvardytą tipą, sukuriamas tik kintamojo projektas. Štai kaip galite sukurti enum tipo kintamuosius.

enum loginis (klaidingas, tikras); // inside function enum boolean check;

Čia sukuriamas kintamasis tipo patikrinimas enum boolean.

Čia yra dar vienas būdas deklaruoti tą patį tikrinimo kintamąjį naudojant skirtingą sintaksę.

 enum loginis (klaidingas, tikras) patikrinimas; 

1 pavyzdys: Surašymo tipas

 #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; ) 

Rezultatas

 4 diena

2 pavyzdys: Numatytosios „Enums“ vertės keitimas

 #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; )

Rezultatas

 Vasara = 4

Kodėl programuojant C ++ naudojamos „enums“?

„Enum“ kintamasis iš daugelio galimų reikšmių ima tik vieną vertę. Pavyzdys tai parodyti,

 #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; ) 

Rezultatas

 4 baitų kintamojo dydis.

Taip yra todėl, kad sveiko skaičiaus dydis yra 4 baitai.;

Dėl to enumas yra geras pasirinkimas dirbti su vėliavomis.

Tą pačią užduotį galite atlikti naudodami C ++ struktūras. Tačiau darbas su „enums“ suteikia jums efektyvumo ir lankstumo.

Kaip naudoti vėliavų sąskaitas?

Paimkime pavyzdį,

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

Tarkime, kad kuriate mygtuką „Windows“ programai. Galite nustatyti žymes „ITALICS“, „BOLD“ ir „Underline“, kad jos dirbtų su tekstu.

Yra priežastis, kodėl visos integralinės konstantos yra 2 galia aukščiau esančiame pseudokode.

 // Dvejetainiais dažais ITALICS = 00000001 BOLD = 00000010 POŽYMIS = 00000100 

Kadangi integralinės konstantos yra 2 galia, galite sujungti dvi ar daugiau žymių vienu metu, nepersidengdami, naudodami bitų kryptį ARBA | operatorius. Tai leidžia jums pasirinkti dvi ar daugiau vėliavų vienu metu. Pavyzdžiui,

 #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; ) 

Rezultatas

 5

Kai išvestis yra 5, visada žinote, kad naudojama paryškinta ir pabraukta.

Be to, prie savo reikalavimų galite pridėti žymėjimą.

 if („myDesign & ITALICS“) (// kursyvo kodas)

Čia mes įtraukėme kursyvą į savo dizainą. Atkreipkite dėmesį, kad teiginyje „if“ rašomas tik kursyvo kodas.

C ++ programavime galite beveik viską atlikti nenaudodami išvardijimų. Tačiau tam tikrose situacijose jie gali būti gana patogu. Tai ir skiria gerus programuotojus nuo puikių programuotojų.

Įdomios straipsniai...