क्या सी ++ में 64 बिट एनम होने का कोई तरीका है? कुछ कोड को रिफैक्टर करने के दौरान मैं # डिफाइनों के समूह में आया जो एक enum के रूप में बेहतर होगा, लेकिन 32 बिट से अधिक होने से संकलक त्रुटि में पड़ता है।सी ++ में 64 बिट एनम?
किसी कारण से मैंने सोचा था कि निम्नलिखित काम कर सकते हैं:
enum MY_ENUM : unsigned __int64
{
LARGE_VALUE = 0x1000000000000000,
};
वहाँ 'uint64_t' से अधिक' अहस्ताक्षरित __int64' पसंद करते हैं करने के लिए एक कारण है? मुझे लगता है कि 'uint64_t' लगभग हर प्रासंगिक प्लेटफ़ॉर्म के लिए परिभाषित किया गया है, लेकिन 'हस्ताक्षरित __int64' प्लेटफॉर्म (हार्डवेयर, कंपाइलर या यहां तक कि लाइब्रेरी) की विशिष्ट परिभाषा की तरह लगता है। – Johan