संकलित करने में विफल रहता है क्या एसटीएल मानचित्र के संदर्भ में गुजरने का कोई कारण है क्योंकि [] ऑपरेटर टूटने का कारण बनता है?सी ++ कॉन्स std :: नक्शा संदर्भ
error: no match for ‘operator[]’ in ‘map[name]’
यहाँ समारोह प्रोटोटाइप है: जब मैं स्थिरांक का उपयोग मैं इस संकलक त्रुटि (जीसीसी 4.2) मिलता है,
void func(const char ch, std::string &str, const std::map<std::string, std::string> &map);
और मुझे कोई समस्या नहीं है कि वहाँ जब मैं स्थिरांक हटाने का उल्लेख करना चाहिएstd :: के नक्शे में कीवर्ड।
यदि मुझे सही तरीके से निर्देश दिया गया है, तो [] ऑपरेटर वास्तव में मानचित्र में एक नई जोड़ी डालेगा यदि उसे कुंजी नहीं मिलती है, जो निश्चित रूप से समझाएगा कि ऐसा क्यों होता है, लेकिन मैं कल्पना नहीं कर सकता यह कभी स्वीकार्य व्यवहार होगा।
यदि कोई बेहतर तरीका है, तो का उपयोग करने के बजाय [] की बजाय, मैं इसकी सराहना करता हूं। मुझे लगता है कि मुझे काम करने के लिए मिलना प्रतीत नहीं होता है ... मुझे कॉन्स मिस्मिटेड इटरेटर त्रुटियां मिलती हैं।
धन्यवाद।