Nov 24, 2010 12:37
Такой маленький хак, а так замечательно облегчает жизнь и ускоряет поиск по строке.
string::const_iterator
find(string::const_iterator begin, string::const_iterator end, char c) {
const char *mem = begin.operator->();
const char *p = string::traits_type::find(mem, end - begin, c);
if(p) return begin + (p - mem);
return end;
}
Самое забавное, что find(str.begin(), str.end(), c) после такого работает даже немного быстрее, чем str.find(c)
upd: А жж, оказывается, на даёт вставить код с gist.github.com. Ну что ж, ещё один повод отказаться от этой платформы.
c++