0
我所需要的以下數據結構來存儲一些數據:C++向量的地圖的地圖作爲實例成員
std::map<int, std::map<unsigned long, std::vector<unsigned long> > > lifetime ;
上述map
將是一個類的實例構件。問題是,當我第一次訪問它們時,是否需要使用new
或構造函數顯式初始化內部容器?例如:
if (this->lifetime[sm].find(address) == this->lifetime[sm].end()) {
(this->lifetime[sm])[address] = std::vector<unsigned long>() ;
}
我好像也並不瞭解的載體和地圖是如何初始化爲實例成員和嵌套的時候,所以我希望得到的一些解釋,以及細節。
因此,像'this-> lifetime [sm] [address] .push_back(current_cycle)';沒有任何事先初始化會有效嗎? – DarthPaghius
@parsoa試試看看。 – xaxxon
@xaxxon好吧,它似乎不起作用,矢量需要事先初始化,你能解釋爲什麼嗎? – DarthPaghius