Есть ли способ иметь 64-битное перечисление в C++? В то время как рефакторинг какого-то кода я столкнулся с набором #defines, который был бы лучше как перечисление, но более 32 бит приводит к ошибке компилятора.64-разрядное перечисление в C++?
По некоторым причинам я думал, что следующее может работать:
enum MY_ENUM : unsigned __int64
{
LARGE_VALUE = 0x1000000000000000,
};
Есть ли причина предпочесть `неподписанный __int64` над` uint64_t`? Я думаю, что `uint64_t` определен для почти каждой соответствующей платформы, но` unsigned __int64` звучит как конкретное определение платформы (аппаратное обеспечение, компилятор или даже библиотека). – Johan 2017-04-07 09:51:47