std::begin
और std::end
container
या array
की शुरुआत और अंत को जानें।std :: end कैसे सरणी के अंत को जानता है?
end
और begin
vector
के उदाहरण के लिए यह इतना आसान है क्योंकि यह एक वर्ग है जो यह जानकारी देता है। लेकिन, यह array
के अंत की तरह कैसे जानता है?
int simple_array[5]{1, 2, 3, 4, 5};
auto beg=std::begin(simple_array);
auto en=std::end(simple_array);
std::begin
यह जानना मुश्किल नहीं है कि सरणी कहां से शुरू होती है। लेकिन यह कैसे पता चलता है कि यह कहां समाप्त होता है? निरंतर पूर्णांक 5
कहीं संग्रहीत किया जाएगा?
अगर मुझे कुछ निम्न-स्तर की जानकारी के साथ उत्तर मिला तो मैं सराहना करता हूं।
धन्यवाद, ऐसा लगता है कि मुझे बहुत सारी चीज़ें याद आईं .. मुझे वास्तव में "एक सरणी क्या है" पूछना चाहिए .. आप का मतलब है कि सरणी किसी प्रकार की छोटी कक्षा है जो पॉइंटर शुरू करने और कई तत्वों के साथ है? क्या आप मुझे sth को इंगित कर सकते हैं कि क्या मैं इसके बारे में विवरण में पढ़ सकता हूं? –
एक ही आधार प्रकार के दो सरणी लेकिन विभिन्न लंबाई के साथ अभी भी दो पूरी तरह से अलग प्रकार हैं। 'int [3]' 'int [2]' जैसा नहीं है। हालांकि, ऐरे क्षय दोनों मामलों में आपको 'int *' प्राप्त करेगा। पढ़ें [यदि मैं सरणी पर और जानना चाहता हूं, तो मैं सी ++ में सरणी का उपयोग कैसे करूं?] (Http://stackoverflow.com/q/4810664/183120)। – legends2k
हां यह वही है जो मैंने आपके उत्तर से निष्कर्ष निकाला है। धन्यवाद फिर से –