Я пытаюсь проверить пример search()
из книги Страуступа.
string quote("why waste time learning, when ignorance is instantaneous?");
bool in_quote(const string& s){
char* p = search(quote.begin(), quote.end(), s.begin(), s.end());
return p != quote.end();
}
void test(){
bool b1 = in_quote("learning"); // b1=true
bool b2 = in_quote("lemming"); // b2=false
}
Но я получаю следующую ошибку:
error C2440: 'initializing' : cannot convert from
'std::_String_iterator<_Elem,_Traits,_Alloc>' to 'char *'
Похоже, тип возвращаемого значенияне правильно.Я также попробовал string::iterator
, и получил ту же ошибку.Итак, какой должен быть правильный тип, это должен быть тип итератора контейнера?Спасибо