- ベストアンサー
map(stl)の引数を知りたい
C++です。 map <int, int> i; により、整数→整数のmapを作ったとします。 そのときに、引数の整数値の最小値を知りたいのですが、 簡単な方法はありますか? perlで言うところの、$ARGV[0]です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>「begin()が返すmapの先頭要素から分かると思います。」 >ということは、最初のキー=i.begin()ということでしょうか? >私の環境では、コンパイルエラーになってしまいます。 i.begin()はiteratorを返します。なので: int minimum_key = i.begin()->first; inr manimum_val = i.begin()->second;
その他の回答 (1)
- Werner
- ベストアンサー率53% (395/735)
> そのときに、引数の整数値の最小値を知りたいのですが、 この「引数」とは何のことですか? mapのキー、もしくは値のことでしょうか? mapのiteratorの参照順はキーが小さな順なので 最小のキーを知りたいのなら begin()が返すmapの先頭要素から分かると思います。 > perlで言うところの、$ARGV[0]です。 perlの$ARGV[0]は1つめのコマンドライン引数なので、 C++では int main(int argc, char *argv[]) としたときの、argv[1]が対応すると思います。 しかし、これはstd::mapとは関係ないですよ?
お礼
ありがとうございます。 引数はキーのことです。 「begin()が返すmapの先頭要素から分かると思います。」 ということは、最初のキー=i.begin()ということでしょうか? 私の環境では、コンパイルエラーになってしまいます。 perlについては間違えました。すみません。
お礼
できました。ありがとうございました。