我是 functors 主题的新手,所以我希望这个问题是建设性的。
我有字符串数组()。我需要在函子的帮助下计算这些字符串的长度总和。
我的代码:
class LengthFinder{
private:
size_t sum;
public:
LengthFinder():sum(0){}
void operator()(string elem)
{
sum += elem.size();
}
operator int()
{
return sum;
}
};
int main(int argc, char* argv[])
{
vector< string > array;
array.push_back("string");
array.push_back("string1");
array.push_back("string11");
string elem;
int sum = std::for_each(array.begin(), array.end(), LengthFinder(/*??*/));
return 0;
}
我应该将什么传递给 LengthFinder(),以获取每个字符串并获取它的大小?