Structs can store enum values alongside other fields.

Enum With Structs

enum_with_structs.cpp
#include <iostream>
#include <string>

enum class Priority {
    Low,
    Medium,
    High
};

struct Ticket {
    std::string title;
    Priority priority;
};

int points(Priority priority) {
    if (priority == Priority::High) {
        return 3;
    }
    if (priority == Priority::Medium) {
        return 2;
    }
    return 1;
}

int main() {
    Priority priority = ;

    Ticket ticket{"login bug", priority};

    std::cout << "title=" << ticket.title << std::endl;
    std::cout << "points=" << points(ticket.priority) << std::endl;
    return 0;
}
#include <iostream>
#include <string>

enum class Priority {
    Low,
    Medium,
    High
};

struct Ticket {
    std::string title;
    Priority priority;
};

int points(Priority priority) {
    if (priority == Priority::High) {
        return 3;
    }
    if (priority == Priority::Medium) {
        return 2;
    }
    return 1;
}

int main() {
    Priority priority = ;

    Ticket ticket{"login bug", priority};

    std::cout << "title=" << ticket.title << std::endl;
    std::cout << "points=" << points(ticket.priority) << std::endl;
    return 0;
}
#include <iostream>
#include <string>

enum class Priority {
    Low,
    Medium,
    High
};

struct Ticket {
    std::string title;
    Priority priority;
};

int points(Priority priority) {
    if (priority == Priority::High) {
        return 3;
    }
    if (priority == Priority::Medium) {
        return 2;
    }
    return 1;
}

int main() {
    Priority priority = ;

    Ticket ticket{"login bug", priority};

    std::cout << "title=" << ticket.title << std::endl;
    std::cout << "points=" << points(ticket.priority) << std::endl;
    return 0;
}
enum field An enum field records a named category inside a larger object.