* 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()));