मैं समझता हूँ के रूप में Set size of vector of vectors at run time का वर्णन करता है, एक के रूप मेंवेक्टर का वेक्टर स्मृति में गठबंधन कैसे होता है?
vector<vector<int> > ref;
वेक्टर के वेक्टर घोषणा कर सकते हैं तब तक
ref.resize(i);
प्रथम स्तर का आकार बदलने और 2 स्तर पर तत्व धक्का:
ref[i].push_back(23);
लेकिन स्मृति में वेक्टर के वेक्टर कैसे गठबंधन होते हैं?
सरल वेक्टर के लिए, यह एक कंटेनर है और array
की तरह लगातार इसके तत्व को संरेखित करता है; लेकिन वेक्टर के वेक्टर के मामले में, मैं तस्वीर नहीं देख सका।
प्रत्येक भीतरी वेक्टर आकार बदल सकता है (वेक्टर के वेक्टर में वेक्टर) के आकार के रूप में, लगातार भीतरी वैक्टर संरेखित (वेक्टर की में वेक्टर) वेक्टर के बाहरी वेक्टर करता है? बाहरी वेक्टर प्रत्येक आंतरिक वेक्टर के लिए यादगार जगह शोध करता है? क्या होगा अगर एक वेक्टर overshoot?
अच्छा पेंटवर्क :) –
* सामान्य कार्यान्वयन में यह लगभग 12 बाइट्स पर है। * => या 64-बिट्स आर्किटेक्चर पर 24 बाइट्स (जो कि ओपी के साथ क्या करना है) की संभावना अधिक है। –