पुनरावर्ती फ़ंक्शन इनलाइनिंग
यह एक आम ग़लतफ़हमी है कि पुनरावर्ती फ़ंक्शन इनलाइन नहीं किए जा सकते। हालाँकि, कंपाइलर वास्तव में इनलाइन पुनरावर्ती फ़ंक्शन कर सकते हैं, हालांकि कुछ विचारों के साथ। संकलक. इनलाइन क्वालीफायर की परवाह किए बिना, कंपाइलर के पास अंतिम निर्णय होता है कि फ़ंक्शन को इनलाइन करना है या नहीं। जैसे कारकों पर:
अनुकूलन स्तर: उच्च अनुकूलन स्तर अनुकूल होते हैं इनलाइनिंग।
फ़ंक्शन आकार और जटिलता: छोटे और कम जटिल फ़ंक्शन इनलाइन होने की अधिक संभावना है।ऑप्टिमाइज़ेशन तकनीकों की उपलब्धता: इनलाइनिंग को संभव बनाने के लिए कंपाइलर लूप अनरोलिंग या टेल कॉल ऑप्टिमाइज़ेशन का उपयोग कर सकता है। .पुनरावर्ती सीमा: कुछ कंपाइलरों में एक पुनरावर्ती फ़ंक्शन की संख्या की सीमा होती है इनलाइन।
उदाहरण इनलाइनिंग अनुकूलनint Factorial(int n) { यदि (n इस मामले में, कंपाइलर ने पुनरावर्ती कॉल के एक हिस्से को प्रभावी ढंग से इनलाइन करते हुए, फैक्टोरियल फ़ंक्शन को तीन बार अनरोल किया है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3