c++ - Argument passing by auto in range based for -


  वेक्टर & lt; MyClass & gt; वस्तुओं; के लिए (ऑटो obj: ऑब्जेक्ट्स) {}  

होगा obj प्रत्येक ऑब्जेक्ट या संदर्भ की एक प्रति हो?

हां, आपको प्रत्येक एंट्री के लिए एक कॉपी मिल जाएगी, आप ऑटो और amp; या auto & amp; amp के साथ नहीं; ; । यह

<पूर्व> स्ट्रक्चर MyClass {MyClass () {} मायक्लास (कॉन्स्ट मायक्लास एंड) {cout & lt; & lt; "प्रतिलिपि कॉपी करें" और & lt; & lt; endl; }}; Int main () {वेक्टर & lt; MyClass & gt; वस्तुओं; मायक्लस ओज 1; objects.push_back (obj1); // वेक्टर भरने वाला काट & lt; & lt; "------" & lt; & lt; endl; के लिए (ऑटो ऑब्जेक्ट: ऑब्जेक्ट्स) // ऑटो लूप {} cout & lt; & lt; "------" & lt; & lt; endl; आउटपुट:
  कॉपी ctor invoked // वेक्टर भरने ------ कॉपी ctor लागू करने के लिए (ऑटो और amp; obj: ऑब्जेक्ट्स) {}}  

// ऑटो पाश ------


Comments