c# - Where should I catch exceptions when making use of '"using" keyword in the code? -
संरचना में कौन सा बेहतर है?
वर्ग प्रोग्राम {static void main (string [ ] Args) {try (foo f = new Foo ()) {// कुछ कमांड जो संभावित रूप से अपवाद उत्पन्न करते हैं }} पकड़ (अपवाद पूर्व) {Console.WriteLine (ex.Message); }}}
या ...
वर्ग का कार्यक्रम {static void main (string [] args) {using (foo f = new Foo () ) {Try {// कुछ आज्ञाएं जो संभावित रूप से अपवाद उत्पन्न करती हैं } पकड़ (अपवाद पूर्व) {Console.WriteLine (ex.Message); }}}}}
या तो ठीक है, यह निर्भर करते हुए कि आप क्या करने जा रहे हैं कैच। यदि आपको अपने कैच में f
का उपयोग करने की आवश्यकता है तो इसे उपयोग करने वाले कथन के भीतर होना चाहिए हालांकि आपके उदाहरण में कोई अंतर नहीं है।
संपादित करें: जैसा कि कहीं और बताया गया है, यह इस बात पर भी निर्भर करता है कि क्या आप ब्लॉक में उत्पन्न होने वाले अपवादों को उपयोग करने या ऑब्जेक्ट सृजन को उपयोग करने वाले वक्तव्य में शामिल करने की कोशिश कर रहे हैं या नहीं । यदि यह ब्लॉक का उपयोग करने के बाद है, तो यह जैसा कि मैंने वर्णित किया है। यदि आप Foo f = new Foo ()
द्वारा उत्पन्न अपवादों को पकड़ना चाहते हैं, तो आपको पहली विधि का उपयोग करना होगा।
Comments
Post a Comment