ウォンツテック

そでやまのーと

STL勉強メモ

汎用アルゴリズムとかのfindとかfind_ifとかadjacent_findとかに渡す引数でconst_iteratoriteratorを混ぜてはいけない。たとえば以下のようなのはerror
vector vec;
...
vector::const_iterator i = vec.begin(),j;
j = adjacent_find(i, vec.end());

vec.begin()とかvec.end()はiteratorなのでadjacent_find内部の二つのiteratorの型が一致しなくてerrorになってるっぽい。

vector::const_iterator vend = vec.end()
として
j = adjacent_find(i, vend);
とする必要あり。