एक परिवर्तनीय दृष्टिकोण का उपयोग करके, हम संदर्भों के माध्यम से अनुक्रम तत्वों को सीधे अद्यतन करने के लिए for_each
का उपयोग कर सकते हैं।
for_each(begin(myv1), end(myv1), [](double& a) { a *= 3; });
यह बहस का मुद्दा हो रहा है, तो
for_each
वास्तव में के रूप में यह एक "गैर-परिवर्तनशील" एल्गोरिथ्म कहा जाता है तत्वों को संशोधित करने की अनुमति दी है किया गया है।
क्या इसका मतलब है कि for_each
अनुक्रम यह पर चल रही है (- जो कि अमान्य iterators जो अनुक्रम संरचना के परिवर्तन करने के लिए संदर्भित करता है) को बदलने के लिए अनुमति नहीं है। इसका मतलब यह नहीं है कि हम सामान्य रूप से वेक्टर के गैर-कॉन्स तत्व को संशोधित नहीं कर सकते हैं - संरचना को इन परिचालनों से छूटा नहीं जाता है।
.... क्या यह इस अन्य पोस्ट से लिया गया था? http://stackoverflow.com/questions/3885095/c-multiply-vector-elements-by-a-scalar-value-using-stl – ianmac45
@ ianmac45 - हाँ, मैंने इसे ऊपर से –
आह से जोड़ा है, ठीक है। याद किया कि – ianmac45