का आकार (लॉक) आकार ठीक करें क्या वेक्टर के आकार को ठीक करने और अभी भी सामग्री को बदलने का कोई तरीका है?std :: vector
मैंने एक कॉन्स वेक्टर const std::vector<int> vec(10);
बनाने की कोशिश की है लेकिन यह मुझे मूल्यों को बदलने से रोकती है।
vec[3] = 3;
एक कंपाइलर त्रुटि देता है: केवल-पढ़ने के स्थान का असाइनमेंट।
मैं भी एक गैर स्थिरांक वेक्टर
std::vector<int> vec(10);
const std::vector<int>& vecref(vec);
जो एक ही संकलक त्रुटि देता है के लिए एक स्थिरांक संदर्भ के साथ की कोशिश की है।
मैं या तो घोषणा पर या प्रारंभिक चरण के बाद वेक्टर आकार को ठीक करने में सक्षम होना चाहता हूं। मैं एक पुराने फैशन सरणी का उपयोग कर सकता था, लेकिन मैं वेक्टर एल्गोरिदम का उपयोग करने में सक्षम होना चाहता हूँ।
यदि मैं कोई फर्क पड़ता हूं तो मैं g ++ का उपयोग कर रहा हूं।
क्या "वेक्टर एल्गोरिदम" आप का उपयोग करना चाहते हैं?'' में कुछ भी जो निश्चित आकार के std :: वेक्टर के साथ काम करता है, एक सादे सरणी के साथ काम करेगा, क्योंकि एल्गोरिदम कंटेनर के बजाय इटरेटर्स में सौदा करता है। –
मैं 'find_if', 'for_each' और कुछ अन्य लोगों का उपयोग कर रहा हूं। मुझे एहसास नहीं हुआ कि मैं उन्हें सादे सरणी के साथ उपयोग कर सकता हूं। – DanS
यदि आपको यहां एक अच्छा जवाब मिल गया है, तो आपको एक स्वीकार करना चाहिए :) –