मैं एक बैल और गाय का खेल बना रहा हूं (कमांड प्रॉम्प्ट के माध्यम से एक शब्द का अनुमान लगाना है) मुझे माइक्रोसॉफ्ट विजुअल स्टूडियो 2017 में एक समस्या हो रही है जहां मैं इनपुट त्रुटियों की जांच के लिए एक एनम का उपयोग कर रहा हूं। यदि कोई त्रुटि है, तो वहां Word_Length जैसे डीबगर में एक त्रुटि माना जाता है या यदि यह ठीक है तो इसे ठीक प्रदर्शित करना चाहिए। फिर जब मैं डिबगर चलाता हूं, तो OK या Word_Length जैसे संदेश को प्रदर्शित करने के बजाय यह कुछ नंबर प्रदर्शित करता है।

क्या मैं कुछ गलत कर रहा हूँ? या यह वीएस है .. मुझे यह अजीब लगता है क्योंकि मैं इसे सी ++ पाठ्यक्रम के साथ कर रहा हूं इसलिए कोड ठीक होना चाहिए। किसी भी मदद के लिए धन्यवाद!

--कोड --------

यहाँ मैं गणना की घोषणा करता हूँ

enum class EGuessStatus
{
    OK,
    Not_Isogram,
    Wrong_Length,
    Not_Lowercase
};

यहां मैं कहता हूं कि यदि शब्द की लंबाई सही नहीं है, तो त्रुटि वापस करें

else if (Guess.length() != GetHiddenWordLength())   //if the word length is 
                                                    //wrong, return an error
    {
        return EGuessStatus::Wrong_Length;

    }

और फिर मैं कहता हूं कि अगर गेस ओके है, तो ओके वापस आ जाओ

else {      //otherwise, return ok
        return EGuessStatus::OK;
    }

और यहां यह main.cpp में है जहां मैं इसे डीबग करने के लिए चिह्नित करता हूं।

EGuessStatus Status = BCGame.checkGuessValidity(Guess);

इस स्थिति में शब्द 'ग्रह' है और जैसा कि आप देख सकते हैं, डीबगर अजीब संख्याएं उगलता है।

एक बार जब मैं 'ग्रह' इनपुट करता हूं तो यह डीबगर की एक छवि है जिसे सही माना जाता है

0
MPardo3 28 जुलाई 2017, 17:31

2 जवाब

सबसे बढ़िया उत्तर

वाह, मुझे गूंगा लगता है। डीबगर पर, मैंने स्थानीय लोगों के बजाय ऑटो पर क्लिक किया। जब मैंने स्थानीय लोगों की जाँच की तो उचित प्रतिक्रिया प्रदर्शित हुई! यद्यपि कि आपकी इस सहायता के लिए धन्यवाद!

0
iMarioOfficial 28 जुलाई 2017, 18:25

मुझे यकीन नहीं है कि मैं पूरी तरह से प्रश्न को समझता हूं लेकिन ऐसा लगता है कि आप एक एनम (जो अंतर्निहित प्रकार एक पूर्णांक है) को एक स्ट्रिंग प्रस्तुति में बदलने की कोशिश कर रहे हैं?

यदि ऐसा है तो आप लुकअप टेबल का उपयोग कर सकते हैं। मैं std::map का उपयोग करता हूं और प्रत्येक एनम के लिए एक मानव पठनीय संदेश को मैप करता हूं। फिर आप 'std::string msg = lookup_map_.at(enum);' कर सकते हैं।

1
Treebeard 28 जुलाई 2017, 17:38