c++ - c++11 how to use reference in vector? -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 8 जवाब
मैं कुछ कंटेनरों का उपयोग कर रहा हूँ संदर्भ वेक्टर के संदर्भ में एक समस्या है और सामान्य रूप से इसका पता नहीं लगाया जा सकता है।
त्रुटि C2039: 'vecMsg': 'std :: _ vector_iterator & lt; std :: _Vector_val & gt का सदस्य नहीं है ; Std :: _ Simple_types & lt; T2 & gt; & gt; & gt; '
सदस्य चर को क्यों नहीं पहचाना जा सकता?
वेक्टर & lt; T1 & gt; vec1; वेक्टर के & lt; टी 2 & gt; vec2; वेक्टर & lt; T1 & gt; :: इटरेटर iVec1; वेक्टर & lt; T2 & gt; :: इटरेटर iVec2; वेक्टर & lt; T2 & gt; :: इटरवेक iInVec; संरचना टी 1 (सार्वजनिक: वेक्टर & lt; T2 & amp; & gt; inVec; } संरचना टी 2 {सार्वजनिक: वेक्टर & lt; std :: string & gt; vecMsg; }
vec1.inVec
के लिए कुछ डेटा इनपुट करें (iVec1 = vec1.begin (); iVec1! = Vec1.end (); iVec1 ++) {For (iVec2 = vec2.begin (); iVec2! = Vec2.end (); iVec2 ++) {// blaa अगर iVec1- & gt; इनवैक पीयूश_बैक (* iVec2); }}
vec1.inVec में प्रवेश करें
के लिए (iVec1 = vec1.begin (); iVec1! = Vec1.end (); iVec1 ++) {For (iInVec = iVec1- & gt; inVec.begin (); iInVec! = IVec1- & gt; inVec.end (); iInVec ++) {// त्रुटि यहाँ होती है Int nSize = iInVec- & gt; vecMsg.size (); आम तौर पर, एक बार जब आप कुछ ऑब्जेक्ट पर इशारा करते हुए संदर्भित करते हैं, तो आप ऐसा नहीं कर सकते हैं। बदल दें। यही कारण है कि आप संदर्भ के वेक्टर नहीं बना सकते। इसके लिए पॉइंटर्स या स्मार्ट पॉइंटर्स के वेक्टर का प्रयोग करें।
Comments
Post a Comment