0
我有一個名爲Info的類。將unique_ptr與矢量和地圖一起使用
我試着創建一個unique_ptr向量來存放這個類的列表。
該映射包含的鍵爲字符串,unique_ptr爲值。
但是當我嘗試檢索從地圖的價值,並試圖把它變成一個載體,形成列表,VS2010編譯器提供了一個錯誤: 錯誤C2664:「無效的std ::矢量< _Ty> ::的push_back( _Ty & &):性病::矢量< _Ty>」不能轉換參數1 '' 到 '的std ::的unique_ptr < _Ty> & &'
vector<unique_ptr<Info>> sInfo;
QMap<QString,vector<unique_ptr<Info>>>::Iterator iterMap;
for(iterMap = map_sInfo.begin(); iterMap != map_sInfo.end(); ++iterMap)
{
vector<unique_ptr<Info>>sValue = iterMap.value();
sInfo.push_back((sValue)); //error C2664
}
如何讓 任何幫助,對此會非常感謝。
謝謝Timo,我確實選擇了第一個選項,它確實有效。但現在我遇到了QMap.error C2248問題:'std :: unique_ptr <_Ty> :: operator =':無法訪問在類'std :: unique_ptr中聲明的私有成員'<_Ty>' – Dilshad