Counting the total number of characters in an std::set I have a std::set&lt;std::string&gt; and I need to know the total number of characters (sum of all strings length):

static size_t SumLength(size_t value, const std::string &amp;str)
{
    return str.length() + value;
}

size_t TotalLength(std::set&lt;std::string&gt; &amp;stringSet)
{
   return std::accumulate(stringSet.begin(), stringSet.end(), 0, SumLength);
}


What do you think of this approach?
You should make the parameter to TotalLength const, so you can use it on constant sets. Since TotalLength does not modify its argument, there is no reason not to use a const reference.

Also this is a small thing, but I'd change the name of SumLength to AddLength as Sum to me suggests that it operates on multiple strings.

Other than that your code looks perfectly fine and straight forward.