Atsauksmes

Kas ir programma valodu apguvē?

Kas ir programma valodu apguvē?


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

Īsi uzskaitot, enum mainīgā tipa var atrast C (ANSI, nevis oriģinālajā K&R), C ++ un C #. Ideja ir tāda, ka tā vietā, lai int izmantotu vērtību kopas attēlošanai, tā vietā tiek izmantots tips ar ierobežotu vērtību kopu.

Piemēram, ja mēs izmantojam varavīksnes krāsas, kuras ir

  1. sarkans
  2. apelsīns
  3. Dzeltens
  4. Zaļš
  5. Zils
  6. Indigo
  7. violets

Ja enumi neeksistēja, varat izmantot a #definēt (C) vai const C ++ / C #, lai norādītu šīs vērtības. Piem

Pārāk daudz intu, lai skaitītos!

Problēma ir tā, ka ir daudz vairāk intu nekā krāsas. Ja violets ir vērtība 7 un programma mainīgajam piešķir vērtību 15, tad tā nepārprotami ir kļūda, bet to var arī neatklāt, jo 15 ir derīga vērtība int.

Glābšanas resursi

Enum ir lietotāja noteikts tips, kas sastāv no nosaukto konstantu kopas, ko sauc par skaitītājiem. Varavīksnes krāsas tiks kartētas šādi:

Tagad iekšēji kompilators izmantos int, lai tos noturētu, un, ja vērtības netiek norādītas, sarkans būs 0, oranžs ir 1 utt.

Kāds ir Enum ieguvums?

Lieta tāda varavīksnes krāsas ir tips, un tam var piešķirt tikai citus tā paša veida mainīgos. C ir vieglāk iet (ti, mazāk stingri rakstīts), bet C ++ un C # neatļaus piešķiršanu, ja vien jūs to piespiedīsit, izmantojot cast.

Jūs neesat iestrēdzis ar šīm kompilatora ģenerētajām vērtībām. Varat tām piešķirt savu konstantu skaitli, kā parādīts šeit.

Tā kā zilajam un indigo ir tāda pati vērtība, tā nav kļūda, jo skaitītāji var ietvert sinonīmus, piemēram, koši un sārtināt.

Valodu atšķirības

C daļā mainīgās deklarācijas priekšā ir vārds enum

Lai gan C ++ tas nav vajadzīgs kā varavīksnes krāsas ir atšķirīgs tips, kuram nav nepieciešams enum tipa prefikss.

C # vērtībās vērtībām piekļūst tipa nosaukums, kā norādīts

Kāda ir Enums jēga?

Enumu izmantošana palielina abstrakcijas līmeni un ļauj programmētājam padomāt par vērtību nozīmi, nevis jāuztraucas par to, kā tās tiek glabātas un tām piekļūst. Tas samazina kļūdu parādīšanos.

Šeit ir piemērs. Mums ir luksoforu komplekts ar trim spuldzēm- sarkans, dzeltenā krāsā un zaļš. Apvienotajā Karalistē luksoforu secība mainās šajās četrās fāzēs.

  1. sarkans - Satiksme pārtraukta.
  2. Gan jau sarkans un Dzeltens - Satiksme joprojām ir apstājusies, bet gaismiņas mainīsies uz zaļu.
  3. Zaļš - Satiksme var kustēties.
  4. Dzeltens - Brīdinājums par tūlītēju sarkanas krāsas maiņu.

Luksofora piemērs

Gaismas tiek kontrolētas, ierakstot vadības baita apakšējos trīs bitus. Tie ir izlikti kā bitu raksts zemāk binārā formā, kur RYG attēlo trīs bitus. Ja R ir 1, deg sarkanā gaisma utt.

Šajā gadījumā ir viegli redzēt, ka četri iepriekš minētie stāvokļi atbilst vērtībām 4 = sarkans ieslēgts, 6 = sarkans + Dzeltens abi ieslēgti, 1 = Zaļš ieslēgts un 2 = Dzeltens ieslēgts

Ar šo funkciju

Klases izmantošana Enums vietā

C ++ un C # mums vajadzētu izveidot klasi un pēc tam pārslogot operatoru | atļaut tipu VAI TIEK luksofori.

Izmantojot enumus, mēs novēršam problēmas ar citu bitu piešķiršanu spuldzes vadības baitam. Varētu būt, ka daži citi biti kontrolē pašpārbaudi vai slēdzi “Zaļā josla”. Tādā gadījumā kļūda, kas ļauj šos bitus iestatīt normālā lietošanā, varētu izraisīt postījumus.

Lai būtu pārliecināts, mēs maskēsim bitus SetTrafficlights () funkciju, tāpēc neatkarīgi no tā, kāda vērtība tiek ievadīta, tiek mainīti tikai trīs apakšējie biti.

Secinājums

Enum ir šādas priekšrocības:

  • Tie ierobežo vērtības, kuras var izmantot enum mainīgais.
  • Viņi piespiež domāt par visām iespējamām vērtībām, kuras enum var izmantot.
  • Tie ir konstanti, nevis skaitļi, palielinot avota koda lasāmību


Skatīties video: Latviešu valodas apguve pieaugušajiem 2012. gads (Janvāris 2023).

Video, Sitemap-Video, Sitemap-Videos