संभव डुप्लिकेट:
How to print message from caught exception?एक फेंक दिया अपवाद में पाठ कहां जाता है?
क्षमा याचना करता है, तो इस बुनियादी या दोहराया गया है - मैं कई खोजें पहले किया था लेकिन कुछ भी है कि इस जवाब नहीं मिला।
अगर मैं कुछ बुनियादी तरह कार्य करें:
throw exception("This thing didn't work");
मुझे लगता है कि कहां दिखाई देगी? स्ट्रिंग आउटपुट कंसोल, स्टैक ट्रेस, या प्रोजेक्ट से जुड़े किसी भी .log फाइलों में दिखाई नहीं देती है। मुझे आश्चर्य होता है कि अगर मैं कहीं भी नहीं देखा जा सकता तो मैं वहां एक स्ट्रिंग भी डाल रहा हूं। मैं निश्चित रूप से स्टैक ट्रेस का उपयोग यह देखने के लिए कर सकता हूं कि यह कहां उड़ाया गया है, लेकिन उस तरह के अपवाद को पहले स्थान पर अपनाने के उद्देश्य से हराया जाता है।
जावा में, जब मैं इसे एक स्ट्रिंग देता हूं, तो मुझे उस आउटपुट में कहीं भी स्ट्रिंग दिखाई देगी। मुझे आश्चर्य है कि सी ++ में इस व्यवहार को पुन: उत्पन्न करना संभव है या नहीं।
मुझे लगता है कि अपवाद पकड़ा जाने पर यह देखा जा सकता है। इसके अलावा, शायद दुर्घटना डंप? – nhahtdh
आप * अपवाद को पकड़ रहे हैं, है ना? –
तकनीकी रूप से यह मान्य नहीं है। आप एमएस लाइब्रै में एक बग का उपयोग कर रहे हैं (std :: अपवाद में कोई कन्स्ट्रक्टर नहीं है जो स्ट्रिंग लेता है)। लेकिन यदि आप 'std :: runtime_error में बदल जाते हैं (" यह बात काम नहीं करती है ") तो आपका बिंदु मान्य है। –