c++ - Effects on max_load_factor and bucket count when clearing an unordered_map -
अगर मैं नहीं - तालिका 103 सी ++ में 11 मानक कहते हैं, unordered_map.clear () करता हूँ तो यह
max_load_factor या
max_bucket_count ?
स्पष्ट तत्वों को मिटा देता है,
खाली () को छोड़कर सही होता है। आप सुरक्षित रूप से मान सकते हैं कि यह अन्य असंबंधित, गैर दस्तावेजी परिवर्तन नहीं करता है। यहां तक कि अगर आपने
max_load_factor को 1.0 के डिफ़ॉल्ट से बदल दिया है, तो इसे
स्पष्ट () द्वारा फिर से संशोधित नहीं किया जाएगा।
max_bucket_count बहुत सारे सिस्टम पर
size_t (-1) को बहुत मुश्किल-कोडित है - वेरिएबल सिस्टम मेमोरी, स्वैप / वर्चुअल मेमोरी आदि, इसके लिए प्रतिस्पर्धा करने वाली अन्य प्रक्रियाएं, गतिशील ओएस बफ़र्स / मेमोरी उपयोग आदि। यह एक अव्यवहारिक मूल्य वापस करने के लिए अव्यवहारिक बनाते हैं, इसलिए अधिकांश कार्यक्रमों को इसके साथ परेशान नहीं करना चाहिए। (यह - अब या कुछ कल्पित भविष्य में - एक ग्यू एम्बेडेड सिस्टम या खिलौना सी ++ - जैसी निश्चित प्रक्रिया मेमोरी वाले सिस्टम, या छोटे (जैसे 16-बिट) प्रकार के उपयोग की तरह "माइक्रो" स्थानिक अनुकूलन पर कुछ अस्पष्ट अर्थपूर्ण मूल्य हैं इंडेक्सिंग बाल्ट्स के लिए।) भले ही, यह सोचने के लिए कोई तार्किक कारण नहीं है कि कंटेनर साफ़ करने से
max_bucket_count पर pre-
स्पष्ट मूल्य से अलग होने वाला प्रभाव होता है। < / div>
Comments
Post a Comment