अधिकतम रिकर्सन गहराई फ़ंक्शन (ओं) द्वारा उपयोग की गई स्मृति की मात्रा, आपके प्लेटफ़ॉर्म पर स्मृति की मात्रा और ओएस या कंपाइलर द्वारा सीमा (यदि कोई है) पर निर्भर करती है।
कोई पैरामीटर और कोई स्थानीय चर के साथ एक पुनरावर्ती समारोह के कब्जे में एक उच्च संभव गहराई (पुनरावर्ती कॉल की संख्या) एक समारोह है कि बड़ी वस्तुओं का एक बहुत से गुजरता है और एक पर है की तुलना में होगा बहुत सारे स्थानीय चर।
तो, आपके प्रश्न का उत्तर यह है: रिकर्सिव कॉल की अधिकतम संख्या एक रिकर्सिव कॉल, सिस्टम पर स्मृति की मात्रा और कंपाइलर या ऑपरेटिंग सिस्टम द्वारा लगाई गई किसी भी सीमा पर निर्भर स्मृति की मात्रा पर निर्भर करती है। विभिन्न पुनरावर्ती कार्यों में स्मृति की अलग-अलग मात्रा होती है।
यदि आप इन सभी वस्तुओं को जानते हैं, तो आप संभावित रिकर्सन की अधिकतम संख्या की गणना कर सकते हैं।
स्रोत
2016-03-01 18:10:11
'सी ++' में कुछ भी नहीं है जो अधिकतम गहराई को परिभाषित करता है। अधिकतम गहराई सीपीयू आर्किटेक्चर, कंपाइलर-विशिष्ट कार्यान्वयन विवरण, और वास्तविक कार्य को रिकर्स किया जा रहा है (बच्चे के कार्यों के साथ-साथ) पर निर्भर है।किसी भी अन्य समस्या की तरह, निश्चित रूप से, यदि आप सभी मानकों को जानते हैं तो आप एक समाधान निर्धारित कर सकते हैं .... लेकिन इस मामले में केवल स्पष्ट कॉल करना और आपको क्या मिल रहा है यह देखना बहुत आसान है। – mah
हालांकि '[temp.inst] 'में एक पैराग्राफ है जो कहता है कि कार्यान्वयन परिभाषित मात्रा है। – NathanOliver
तो यदि रिक्त स्थान को निर्दिष्ट सीमा से नीचे होने पर रोकने के लिए फ्री स्टैक आकार की जांच करने का कोई तरीका है? – Jepessen