std::unordered_map using operator []の要素に初めてアクセスすると自動的に作成されます。初期化についての保証は何か(もしあれば)? (初期化された値であることが保証されているか、または構築された場合のみ保証されますか?std :: unordered_mapの初期化
例:
std::unordered_map<void *, size_t> size;
char *test = new char[10];
size[test] += 10;
ですこのシーケンスの終わりに10であることが保証サイズ[テスト]?
私はドキュメントのその部分を読んだことがありますが、私は意味がわかりませんでした。 "default-constructed"とは、size_tのような整数型の意味ですか? (標準を引用できますか?) – Suma
@Suma:整数型はクラス型ではないので、コンストラクタはありません。これらの型の値を初期化することはゼロ初期化に等しい。 (第8章) –
@KerrekSBあなたはC++とJavaを混同しないと確信していますか? Builtinsはデフォルトではありません。ゼロに構築します。 – spraff