Có cách nào để có một enum 64 bit trong C + +? Trong khi refactoring một số mã tôi đã đi qua bó của #defines đó sẽ là tốt hơn như một enum, nhưng được lớn hơn 32 bit gây ra trình biên dịch để lỗi.64 bit enum trong C++?
Đối với một số lý do tôi nghĩ những điều sau đây có thể làm việc:
enum MY_ENUM : unsigned __int64
{
LARGE_VALUE = 0x1000000000000000,
};
Có lý do nào để chọn 'unsigned __int64' trên' uint64_t' không? Tôi nghĩ rằng 'uint64_t' được định nghĩa cho hầu như mọi nền tảng liên quan, nhưng' unsigned __int64' có vẻ như một định nghĩa cụ thể về nền tảng (phần cứng, trình biên dịch hoặc thậm chí là thư viện). – Johan