Мой код выглядит следующим образом:Почему строка :: find_first_of() возвращает неожиданный результат?
string s_1 = "ssissippi";
string s = "si";
size_t pos = s_1.find_first_of(s);
while (pos != string::npos)
{
cout << pos << endl;
pos++;
pos = s_1.find_first_of(s, pos);
}
И я получаю такой результат: 0,1,2,3,4,5,8.
Я не могу понять, что приводит к ответу. Буду признателен за любую помощь.
Какой результат вы ожидали? –
Кроме того, из [this 'std :: string :: find_first_of' reference] (http://en.cppreference.com/w/cpp/string/basic_string/find_first_of):« Находит первый символ, равный *** одному *** символов в заданной последовательности символов. " –
Я считаю, что вы не один, кто неправильно читал документ. Поэтому вопрос может быть полезен для других. –