4. Typ wyliczeniowy

Typ wyliczeniowy w języku C++ (ang. enumeration, enum) to  typ danych, który umożliwia definiowanie zmiennych, które mogą przyjmować jedną z wcześniej zdefiniowanych wartości. Wartości te są reprezentowane przez identyfikatory. 

Typ wyliczeniowy definiuje się za pomocą słowa kluczowego enum. Składnia wygląda następująco:

enum DniTygodnia {
    Poniedzialek,
    Wtorek,
    Sroda,
    Czwartek,
    Piatek,
    Sobota,
    Niedziela
};

Domyślnie wartości wyliczeniowe są reprezentowane jako kolejne liczby całkowite zaczynając od zera. Można jednak przypisać im konkretne wartości:

enum DniTygodnia {
    Poniedzialek=1,
    Wtorek,
    Sroda,
    Czwartek,
    Piatek,
    Sobota,
    Niedziela
};
W tym przypadku Poniedzialek ma wartość 1, Wtorek 2, Sroda 3, itd.