2013-12-14 3 views
11

मैं ऐसे एप्लिकेशन पर काम कर रहा हूं जो स्ट्रिंग में अक्षरों की आवृत्ति को ट्रैक करता है। ऐसा करने के लिए मैं निम्नलिखित Structएसटीएल मानचित्र त्रुटि: नामस्थान 'std' में 'map' नाम का कोई टेम्पलेट नहीं; क्या आपका मतलब 'अधिकतम' था?

struct MessageLetter{ 
    char letter; 
    int count; 
    MessageLetter(char letter, int freq) 
    : letter(letter), count(freq) 
    {} 
}; 

बनाया अब मैं जब मैं इस मैं निम्नलिखित मिल संकलित करने के लिए कोशिश एक STL :: नक्शा बनाने के लिए इस प्रकार की तरह कोशिश कर रहा हूँ ...

std::map<std::string, MessageLetter> lList; 
    for(int i = 0; i < output.length(); i++){ 
    std::cout << i << output[i] << std::endl; 
    if(lList.find(output[i]) == lList.end()){ 
     std::cout << "Letter not found" << std::endl; 
     MessageLetter m = {output[i],1}; 
     lList[output[i]] = m; 
    } 
    else{ 
     std::cout << "Letter found" << std::endl; 
    } 
    } 

..

test.cpp:95:8: error: no template named 'map' in namespace 'std'; did you mean 'max'? 
    std::map<std::string, MessageLetter> lList; 

मैं सी ++ में नया हूं इसलिए कोई मार्गदर्शन बहुत अच्छा होगा। और यदि यह एक डुप्लिकेट है तो मुझे हटाने में खुशी होगी। यदि आवश्यक हो तो कोई अन्य जानकारी (सी ++ संस्करण इत्यादि) प्रदान की जाएगी। यह अंततः एक देशी एंड्रॉइड ऐप होने जा रहा है।

+4

लगता है जैसे आप आसानी से '#' शामिल करना भूल गए हैं। –

+2

क्या आपने #'शामिल किया था? – Praetorian

उत्तर

29
#include <map> 

समस्या हल हो गई।

+0

ओह हाँ मुझे लगता है कि मुझे लगता है कि यह सब एक std आयात या कुछ के तहत आयात किया। मुझे पता था कि इसे आसान होना था। – Jackie

संबंधित मुद्दे