std::map<QString,QString> *abc;
abc->insert(make_pair<QString,QString>("bads","dasddsa"));
abc->insert(make_pair<QString,QString>("bads1","dasddsa1"));
map<QString,QString>::iterator st;
for(st=abc->begin();st!=abc->end();st++)
{
qDebug()<<st->first;
qDebug()<<st->second;
}
上述指針申明后,執行會有錯誤,修改為下:
std::map<QString,QString> cc;
std::map<QString,QString> *abc;
abc=&cc;
abc->insert(make_pair<QString,QString>("bads","dasddsa"));
abc->insert(make_pair<QString,QString>("bads1","dasddsa1"));
map<QString,QString>::iterator st;
for(st=abc->begin();st!=abc->end();st++)
{
qDebug()<<st->first;
qDebug()<<st->second;
}
因為在申明指針的時候並沒有申明存儲空間,所以申明一個指針的時候,必須已經初始化對應的存儲空間