Yes. enum gets mapped to int values and enum class to the enum type. What exactly is the problem here? Do you expect to be able to access the integer value more easily?
I gave the last example in python, this is the expected behavior when an enum has a given type. However, I do not know how this happens in C++, what is the point of specifying the type if it is impossible to extract the value.
from enum import Enum
class FlagsEnum(Enum):
none = 0
always = 1 << 0
once = 1 << 1
first_use_ever = 1 << 2
appearing = 1 << 3
print(FlagsEnum.appearing)
out: PImGuiCond.appearing
Python has the same behavior if you don’t convert the enum to a type int.