आप QMAKE_CXXFLAGS
सेट करके अपवाद बंद नहीं करते हैं क्योंकि यह विकल्प CONFIG
द्वारा प्रबंधित किया जाता है। आपको
CONFIG-=exceptions
का उपयोग बंद करने के लिए करना चाहिए।
जी ++ आर्ग देखें जब आप न QMAKE_CXXFLAGS
और न ही CONFIG
सेटिंग बदल गई है:
g++ -c -O2 -frtti -fexceptions -mthreads -Wall <...> main.cpp
अब, चलो QMAKE_CXXFLAGS
सेट कर सकते हैं: प्राप्त
g++ -c -fno-exceptions -O2 -frtti -fexceptions -mthreads -Wall <...> main.cpp
ओह, हम मिल हमारे -fno-exceptions
CONFIG
द्वारा ओवरराइड की गई है ' एस -fexceptions
। अब, चलो CONFIG
सेट कर सकते हैं:
g++ -c -O2 -frtti -Wall -fno-exceptions <...> main.cpp
mingw32-make.exe[1]: Leaving directory `G:/proj/ingeritance'
main.cpp: In function 'int qMain(int, char**)':
main.cpp:22:15: error: exception handling disabled, use -fexceptions to enable
mingw32-make.exe[1]: *** [release/main.o] Error 1
mingw32-make.exe: *** [release] Error 2
ओह! संकलन त्रुटि!
क्यूटी लाइब्रेरी अपवादों का उपयोग नहीं करता है। –
सवाल क्या है? सवाल यह है, "मेरा कोड संकलित क्यों करता है, मुझे उम्मीद है कि मैं असफल होने की कोशिश कर रहा हूं क्योंकि मैं गलत तरीके से कोड में अपवाद फेंकने की कोशिश कर रहा हूं जिसे मैं-अपवादों के साथ संकलित करने का प्रयास कर रहा हूं?" या सवाल यह है, "मैं क्यूटी के साथ अपने अपवाद-उपयोग कोड को सही तरीके से कैसे जोड़ूं?"? "उस पर कोई भी विचार" एसओ के लिए उचित रूप से व्यापक है, यह किसी दिए गए पाठ पर लोगों की व्यक्तिगत प्रतिक्रिया को मतदान करने के लिए यहां नहीं है ;-) –
@ वोलोडिमर लेकिन मैं इसका उपयोग करता हूं। – smallB