size_t
प्रकार है कि सरणी अनुक्रमण के लिए इस्तेमाल किया जाना चाहिए जब आप एक अपेक्षाकृत सामान्य सरणियों के साथ काम करते हैं। अर्थात। जब आपके पास अमूर्त char
एस, int
एस या कुछ और की एक सरणी है।
आप एक विशिष्ट सरणी के साथ काम कर रहे हैं, यानी एक सरणी है कि कुछ आपके आवेदन के लिए विशिष्ट तत्व शामिल हैं, आप सामान्य रूप से पहले से ही एक "पसंद के प्रकार" में उस प्रकार के संस्थाओं गिनती या सूचकांक के लिए होनी चाहिए अपने आवेदन। यही वह प्रकार है जिसका आप उपयोग करना चाहिए। उदाहरण के लिए, यदि कुछ सरणी में कंपनी के कर्मचारियों के लिए रिकॉर्ड शामिल हैं, तो आपके पास अपने प्रोग्राम में "पसंद का प्रकार" होना चाहिए जिसका उपयोग आप "कर्मचारियों की मात्रा" को निर्दिष्ट करने के लिए करते हैं। यही वह प्रकार है जिसका उपयोग आपको कर्मचारी रिकॉर्ड के सरणी अनुक्रमणित करने के लिए करना चाहिए। यह unsigned int
हो सकता है, यह employee_count_t
या ऐसा कुछ भी हो सकता है। उस उद्देश्य के लिए नग्न size_t
का उपयोग करना एक डिज़ाइन त्रुटि है।
यह भी ध्यान रखें, कि size_t
तुरंत सरणी अनुक्रमण के लिए इरादा नहीं एक प्रकार है। यह एक प्रकार है जिसका उद्देश्य कार्यक्रम में सबसे बड़ी वस्तु के आकार का प्रतिनिधित्व करना है। यह पारगमनशीलता द्वारा सरणी के लिए "काम करता है": सरणी वस्तुएं हैं, इसलिए size_t
हमेशा एक सरणी को इंडेक्स करने के लिए पर्याप्त है। हालांकि, जब आप एक प्रोग्राम डिजाइन इसे और अधिक समझ में आता है सामान्य कंटेनर के संदर्भ में सोचने के लिए, विशिष्ट सरणियों के संदर्भ में सोचने के बजाय। आज यह एक सरणी हो सकती है, कल आपको इसके बजाय एक लिंक्ड सूची या पेड़ पर स्विच करना पड़ सकता है। सामान्य स्थिति में, size_t
की श्रेणी एक अमूर्त कंटेनर में तत्वों की संख्या का प्रतिनिधित्व करने के लिए पर्याप्त नहीं है, इसलिए size_t
ऐसे मामलों में एक अच्छा विकल्प नहीं है।
@Cha धन्यवाद, मैं इस पोस्ट से पहले नहीं मिला। – Anycorn