मुझे आश्चर्य है कि इस लाइन एक dangling सूचक बनाता है, तो:std :: runtime_error कन्स्ट्रक्टर में पारित स्ट्रिंग की प्रतिलिपि बनाता है?
string arg="derp";
throw std::runtime_error("Unknown argument "+arg);
std::runtime_error
कॉपी करता है string
, या यह संदर्भ की दुकान करता है?
आपका शीर्षक 'std :: अपवाद' कहता है लेकिन कोड 'std :: runtime_error' है। ध्यान दें कि 'std :: runtime_error' अपवाद वर्ग है जो एक संदेश लेता है, जैसा कि आप कर रहे हैं, लेकिन' std :: अपवाद 'नहीं है, इसलिए शीर्षक बहुत अधिक समझ नहीं लेता है (यानी, 'std :: अपवाद '* एक स्ट्रिंग-स्वीकार्य कन्स्ट्रक्टर नहीं है *। – GManNickG
@GManNickG को सही किया गया। –