वास्तविक दुनिया प्रोग्रामिंग में मैक्रो दुरुपयोग के नुकसान
मैक्रोज़ और प्री-प्रोसेसर सी प्रोग्रामिंग में एक महत्वपूर्ण भूमिका निभाते हैं, क्षमता प्रदान करते हैं पाठ प्रतिस्थापन को परिभाषित करने और कोड जनरेशन करने के लिए। हालाँकि, उनके अत्यधिक उपयोग से कई चुनौतियाँ पैदा हो सकती हैं, जैसा कि वास्तविक दुनिया के उदाहरण से पता चलता है जो सबसे खराब मैक्रो दुरुपयोग का उदाहरण देता है। स्मृति-विवश प्रणालियों के साथ पिछले अनुभव ने एक अपरंपरागत दृष्टिकोण का सहारा लिया। इस व्यक्ति ने RETURN नामक मैक्रो को इस प्रकार परिभाषित किया:
#define RETURN(result) return (result);}
#define RETURN(result) return (result);}
int myfunction1(args) { पूर्णांक x = 0; // कुछ करो वापसी(x) int myfunction2(args) { पूर्णांक y = 0; // कुछ करो वापसी(y) int myfunction3(args) { पूर्णांक z = 0; // कुछ करो वापसी(z) }
int myfunction1(args) { int x = 0; // do something RETURN(x) int myfunction2(args) { int y = 0; // do something RETURN(y) int myfunction3(args) { int z = 0; // do something RETURN(z) }
इस व्यक्ति से जुड़ी अन्य विलक्षणताओं ने अत्यधिक प्रोग्रामिंग प्रथाओं के संभावित परिणामों पर प्रकाश डाला। एक उत्तल दर्पण, रणनीतिक रूप से मॉनिटर के ऊपर स्थित, दर्शकों की उपस्थिति का पता लगाने के लिए एक प्राथमिक निगरानी प्रणाली के रूप में कार्य करता था। इसके अतिरिक्त, जब भी कंपाइलर को कोड में त्रुटियों का पता चलता था, तो कुर्सी से अचानक बाहर निकलना और उसके बाद पुशअप्स का एक त्वरित सेट आत्म-दंड के रूप में उपयोग किया जाता था।
यह उदाहरण अत्यधिक के खतरों के बारे में एक सतर्क कहानी के रूप में कार्य करता है स्थूल दुरुपयोग. जबकि मैक्रोज़ विशिष्ट परिदृश्यों में कुछ लाभ प्रदान कर सकते हैं, उनके अंधाधुंध उपयोग से ऐसे कोडबेस बन सकते हैं जिन्हें पढ़ना, बनाए रखना और डीबग करना मुश्किल हो जाता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3