c++関連コンテナmapの標準ライブラリアルゴリズムfindの使用に関する推測

830 ワード

#include 
#include 
#include 
#include 
using namespace std;
int main()
{
map m{
    {"abc",1},{"abcd",2},{"abcde",3}};
auto pos = find(m.begin(),m.end(),pair{"abc",1});
cout << pos->first <second << endl;
        return 0;

}
~                                                                               
~      

プログラムのfindの最後のパラメータ、pairはconstを削除すると、エラーが表示されます.
mapタイプ反復器が指すタイプはconst key_typeタイプ、価値タイプは変わっていません.
したがって、標準ライブラリアルゴリズムfind(関連コンテナ自体のバージョンではない)を使用する場合、最後の3番目のパラメータの値タイプもmap,constは外せません.もう少しで私を丸めるところだったのに、スタンダードライブラリのfindは使えないと思っていた!!!