मुझे हाल ही में एक डीएल मिला है जिसे दूसरों द्वारा लागू किया गया है। मुझे इसे अपने आवेदन में उपयोग करना है। अपने वर्ग के हेडर फाइल में वे समारोह घोषणा"सी ++ अपवाद विनिर्देशन से अनदेखा कैसे करें" चेतावनी
void func1() throw (CCustomException);
अब जब मैं संकलन यह चेतावनी हो रही है,
C++ अपवाद विनिर्देश एक समारोह इंगित करने के लिए छोड़कर पर ध्यान नहीं दिया है _declspec (नहीं है नोट्रो)
मैंने MSDN - Documentation पढ़ा लेकिन इसे स्पष्ट रूप से समझ नहीं सका। साथ ही, मैं चेतावनी को अक्षम नहीं करना चाहता क्योंकि यह दिखा रहा है। मैं जानना चाहता हूं कि इसे अक्षम करने के बजाय मैं क्या गलत कर रहा हूं।
मैं अपने समारोह में सोचा है, myfunc()
कहना तक पहुँचने कि func1()
dll से कि अपवाद विनिर्देश सूची नहीं है। इसलिए मैंने अपने कार्य में संबंधित अपवाद विनिर्देश सूची को भी
void myfunc1() throw (CCustomException);
लेकिन मुझे अभी भी चेतावनी मिल रही है। यह चेतावनी क्या है और इससे छुटकारा पाने के लिए क्या है? मैं विंडोज एक्सपी में क्यूटी 4.5 का उपयोग कर रहा हूँ।
ऐसा लगता है कि यह C++ 0x के रूप में संकलित है, जिसमें इस तरह के अपवाद विनिर्देशों को C++ 03 के बजाय बहिष्कृत किया गया है। यह निर्दिष्ट करने के लिए एक कंपाइलर विकल्प हो सकता है कि आप '03 चाहते हैं, या बस अपवाद विनिर्देशों को पुन: सक्षम करने के लिए यदि आप अन्य '0x फीचर्स चाहते हैं। –
@Alexandre सी, हां मैं अक्षम करने और सभी के साथ सहमत हूं, लेकिन चेतावनी क्या है ?? यह क्यों हो रहा है और इसके पीछे तर्क क्या है ?? मैं बस इन्हें जानना चाहता था .. – liaK
@liaK: अलेक्जेंड्रे द्वारा पोस्ट किया गया लिंक देखें। – Philipp