#16 C++で学ぶ辞書型(マップ)の基本
C++で名前と値の組み合わせを扱うには、`std::map`という仕組みを使います。この記事では、C++における辞書に相当する使い方を解説します。
mapを作ってみる
#include <map>
std::map<std::string, int> scores;
scores["太郎"] = 90;
値を取り出す
存在しないキーで直接アクセスすると、その型のデフォルト値が新しく作られてしまうことがあるため、`find()`を使って事前に確認するのが安全です。
auto it = scores.find("太郎");
if (it != scores.end()) {
std::cout << it->second << std::endl;
}
全てのキーと値を順に処理する
for (const auto& pair : scores) {
std::cout << pair.first << ": " << pair.second << std::endl;
}
C++ならではの注意点
`std::map`は、内部でキーが自動的に並べ替えられて管理されるという特徴があります。順序を気にしない場合は、`std::unordered_map`というより高速な仕組みを使う選択肢もあります。用途に応じて使い分けましょう。
まとめ
C++の辞書は`std::map`が基本で、`find()`を使って安全にキーを確認します。順序が不要なら`unordered_map`も検討しましょう。
本ページはプロモーションを含みます。
参考書籍(PR)
C++をもっと学びたい方には「新・明解C++入門編」がおすすめです。
コメント
コメントを投稿