हालांकि यह पहले से ही विशेष है, वेक्टर < बूल> आकार 8 के ब्लॉक में आवंटित करना है। मुझे यह भी पता है कि कुछ लोग किसी भी आवंटित ब्लॉक के 'सही आकार' को वापस करने के लिए मॉलोक प्राप्त करने पर काम कर रहे हैं, इसलिए यदि आवंटित ब्लॉक अपरिवर्तनीय अपशिष्ट पेश किया होगा, बजाय वेक्टर उपयोगी रूप से अंतरिक्ष का उपयोग करता है।
जैसे ही हम 64-बिट ओएसई में जाते हैं, स्मृति स्थान अचानक (प्रसिद्ध अंतिम शब्द) बन जाता है, किसी के मुकाबले कहीं भी बड़ा हो जाता है, इसलिए वर्चुअल मेमोरी के बड़े ब्लॉक आवंटित करने और उन्हें भरने के लिए और अधिक उचित हो जाता है। चारों ओर वस्तुओं को स्थानांतरित करना महंगी है, और व्यावहारिक रूप से समय की बर्बादी है, क्योंकि हम चीजों को नहीं ले रहे हैं क्योंकि भौतिक स्मृति सीमित है, केवल एक आभासी स्थान से दूसरे तक!
स्रोत
2010-04-24 10:58:38
मैं कल्पना कर सकता हूं कि कुछ आवंटक निश्चित लंबाई के ब्लॉक में आवंटित करना चाहते हैं। इस प्रकार यदि तत्व का आकार उस ब्लॉक आकार से छोटा है, तो यह अभी भी समग्र हो सकता है। बस कुछ अनुमान ... –
@ जोहान्स: यदि आपने इसे उत्तर के रूप में पोस्ट किया है, तो इसे स्पष्ट करना बहुत आसान होगा। नीचे टिप्पणी करने के लिए मेरी टिप्पणी देखें, साथ ही मैं नहीं देखता कि कैसे आवंटक वेक्टर को संवाद कर सकता है (आवंटित() केवल एक सूचक लौटाता है), लेकिन मुझे लगता है कि अगर यह std :: आवंटक का उपयोग किया जाता है तो यह आंशिक रूप से विशिष्ट हो सकता है। हालांकि यह मुझे उपयोगकर्ता विशेषज्ञता के बारे में आश्चर्यचकित करता है (अभी भी अनुमति है, है ना?) और संघर्ष। –