* Florian Weimer:

> * Frank Ch. Eigler:
>
>> +inline bool
>> +string_endswith(const string& haystack, const string& needle)
>> +{
>> +  return (haystack.size() >= needle.size() &&
>> +      haystack.substr(haystack.size()-needle.size()) == needle);
>> +}
>
> I think you should use std::equal because substr allocations.  So
> something loke htos:
>
>   return (haystack.size() >= needle.size()
>           && std::equal(haystack.end() - needle.size(), haystack.end(),
>                         needle.begin(), needle.end()));

Eh, you have to drop the needle.end() for C++98 compatibility.

Reply via email to