मुझे कुछ डरावना मिला है जिसे मैं समझ नहीं पा रहा हूं।std :: string s() अजीब व्यवहार
std::string a();
मुद्रित होने पर यह 1
लौटाता है। मुझे नहीं पता कि यह कहां से आया था। मैंने सोचा कि a()
तर्क के बिना एक निर्माता है, लेकिन ऐसा लगता है कि यह नहीं है।
मुझे इस बारे में जानकारी कहां मिल सकती है? और यह क्या है?
और जब std::string b(a);
संकलक करने का प्रयास कर चिल्लाते हैं:
error: no matching function for call to ‘std::basic_string<char>::basic_string(std::string (&)())’
स्पष्टीकरण की सराहना की जाएगी।
std::string a();
यह एक समारोह a
कहा जाता है, कोई पैरामीटर के साथ वाणी है, और एक std:string
लौटने:
गूगल "C++ सबसे अप्रिय पार्स" के रूप में मूल्यांकन करेंगे। – Jon
देखें: http://en.wikipedia.org/wiki/Most_vexing_parse –
लोग, सभी डाउनवॉट्स क्या हैं? क्या जवाब इतना स्पष्ट है कि आप सभी को तुरंत पता था कि जब समस्या थोड़ी थी तो समस्या क्या थी? एक डुप्ली के रूप में प्रश्न को बंद करने के लिए मतदान करना बहुत अच्छा है, लेकिन लोगों को जानने के लिए लोगों को थप्पड़ मारना नहीं है। – Jon