सी/सी ++ कोड मैं बंदरगाह करने की कोशिश में के लिए, किसी बहिष्कृत सिस्टम हैडर शामिल है:अक्षम #warning सिर्फ एक हैडर
#ifdef __GNUC__
#warning "this header is deprecated"
#endif
हम gcc -Wall -Werror
के साथ यहाँ संकलन के रूप में:
संकलन बंद हो जाता है। लंबे समय तक, बहिष्कृत कार्यों के उपयोग को प्रतिस्थापित करना सबसे अच्छा है, लेकिन अभी के लिए मैं केवल इस चेतावनी को अक्षम करना चाहता हूं।
पाठ्यक्रम के काम के -Werror
के बिना संकलन, लेकिन चूंकि यह पूरी तरह से स्वचालित निर्माण प्रक्रिया का हिस्सा है, इसलिए मैं ऐसा नहीं करना पसंद करता हूं।
#undef
आईएन __GNUC__
के साथ हेडर समेत इसे बाद में एक संभावना है, लेकिन मैं शामिल हेडर के अंदर दुष्प्रभावों से चिंतित हूं।
क्या #warning
अक्षम करने या -Werror
को केवल एक शीर्षलेख के लिए अक्षम करने का कोई तरीका है?
"सी/सी ++ कोड" जैसी कोई चीज़ नहीं है। –
एक कारण है कि चीजें बहिष्कृत हो जाती हैं। समस्या के चारों ओर अपना रास्ता हैक करने की कोशिश करने के बजाय, समस्या को खत्म करें और बहिष्कृत शीर्षलेख का उपयोग करना बंद करें। यदि उन्होंने हेडर को बहिष्कृत किया है, तो निश्चित रूप से आपके लक्ष्यों को पूरा करने के लिए एक बेहतर, अधिक आधुनिक तरीका है। – Elkvis
@ लाइटनेसरेसेसिन ऑर्बिट: यह सी और सी ++ कोड का मिश्रण है। –