I次のコードを持っている:のstd :: unordered_mapポインタ/参照の無効
std::unordered_map<std::string, std::string> map;
map["k1"] = "v1";
auto& v1 = map["k1"];
map["k2"] = "v2";
http://en.cppreference.com/w/cpp/container/unordered_map
注意事項を読んだ後は、
スワップ機能は、内部イテレータのいずれかを無効にしないでくださいスワップ領域の終わりを示すイテレータを無効にします。
コンテナに格納されているキーまたはデータへの参照とポインタは、対応するイテレータが無効化されている場合でも、その要素を消去することによってのみ無効になります。
v1
が安全に新しい値を挿入した後に使用することができますようにそれは再ハッシュは、挿入時に発生する可能性がある場合でも、見えます。
私のこの見積もりの解釈は正しいですか?マップを変更した後、マップから値の参照/ポインタを使用しても構いません(明らかに値自体を消去すると参照/ポインタが無効になります)。
はい、正しいです。 [ここ](http://en.cppreference.com/w/cpp/container/unordered_map/operator_at)も参照してください。 –