Architecture Diagram
ENUMERATION COMPARISON:
┌─────────────────────────┬──────────────────────────┬────────────────────────────┐
│ Feature │ Unscoped enum │ Scoped enum class (C++11) │
├─────────────────────────┼──────────────────────────┼────────────────────────────┤
│ Scope │ Leaks to outer namespace │ Scoped: EnumName::Value │
│ Implicit int Conversion │ YES (Permissive/Buggy) │ NO (Requires static_cast) │
│ Underlying Type Control │ Implementation dependent │ Explicit (e.g. : uint8_t) │
│ Forward Declaration │ No │ Supported │
└─────────────────────────┴──────────────────────────┴────────────────────────────┘