मैं सी ++ के लिए अपेक्षाकृत नया हूँ, और शुरू से ही यह मेरे में drilled गया है कि आप इसके बजायसी ++ वैरिएबल लम्बाई सरणी क्यों देता है जो गतिशील रूप से आवंटित नहीं होते हैं?
int x;
cin >> x;
int array[x];
की तरह कुछ नहीं कर सकते, तो आप गतिशील स्मृति उपयोग करना चाहिए। हालांकि, मुझे हाल ही में पता चला है कि उपर्युक्त संकलित होगा (हालांकि मुझे एक एपैडेंटिक चेतावनी मिल रही है कि यह आईएसओ सी ++ द्वारा प्रतिबंधित है)। मुझे पता है कि यह मानक रूप से अनुमति नहीं है, तो यह स्पष्ट रूप से एक बुरा विचार है, लेकिन मुझे पहले यह भी पता नहीं था कि यह संभव था।
मेरा प्रश्न है, जी ++ वैरिएबल लम्बाई सरणी क्यों देता है जो मानक द्वारा अनुमत नहीं होने पर गतिशील रूप से आवंटित नहीं होते हैं? साथ ही, यदि संकलक के लिए यह संभव है, तो मानक में क्यों नहीं है?
अपने अंतिम प्रश्न के बारे में, सी ++ उनका समर्थन क्यों नहीं करता है, आप इस प्रश्न से भी परामर्श ले सकते हैं: http://stackoverflow.com/questions/1887097/variable-length-arrays-in-c और comp.lang। स्वीकृत उत्तर में सी ++ धागा जुड़ा हुआ है। –