Kurs maturalny z języka angielskiego!
kurs-maturalny-jezyk-angielski

PROGRAMOWANIE I ALGORYTMY

Zajęcia maturalne z informatyki
Olimpiada Informatyczna Juniorów
    Prowadzący: Marcin Kasprowicz
  • właściciel serwisu algorytm.edu.pl
  • wrzesień 2024 — start zajęć
  • czytaj więcej

Wyliczenia w C++ (enum)


powrót

Definicja

Wyliczenia, podobnie jak const, służą do definiowania w przyjazny sposób stałych. Enum budową przypomina strukturę. Definiujemy najpierw konstrukcję wyliczenia enum (podobnie jak definiujemy elementy struktury), złożoną z listy nazw stałych. W ten sposób stworzyliśmy nowy typ stałej złożonej z wielu elementów. Różnica między stałą const jest taka, że możesz zdefiniować wiele stałych jednocześnie.

Budowa

enum nazwa{
	element_1 = wartość_1,
	element_2 = wartość_2,
	...
	element_n = wartość_n
};

np.:

enum dzien{
	poniedzialek = 1,
	wtorek =2,
	sroda = 3,
	czwartek = 4,
	piatek = 5,
	sobota = 6,
	niedziela = 7
};

Sposób użycia

Możesz stworzyć wyliczenie na podstawie typu "dzien" lub bezpośrednio odwoływać się do nazw stałych zdefiniowanych w enum.

Przykład 1

#include <iostream>
using namespace std;

//definicja wyliczenia
enum dzien{
	poniedzialek = 1,
	wtorek =2,
	sroda = 3,
	czwartek = 4,
	piatek = 5,
	sobota = 6,
	niedziela = 7,
	brak = -1
};

int main()
{
	//tworzymy wyliczenie (podobnie jak const tydzien)
	dzien tydzien;
	
	tydzien = poniedzialek;
	cout<<tydzien<<endl; //1
	
	cout<<wtorek<<endl; //2
	
	int wt = wtorek;
	
	cout<<wt<<endl; //2
	
	return 0;
}

Wartości domyślne

Jeśli nie zostaną podane wartości kolejnych elementów enum, to automatycznie przypisane zostaną kolejne wartości począwszy od 0.

enum dzien{
	poniedzialek,
	wtorek,
	sroda,
	czwartek,
	piatek,
	sobota,
	niedziela
};

W powyższym przykładzie poniedzialek ma wartość 0, wtorek 1 itd.