ファンクターのテーマは初めてなので、この質問が建設的であることを願っています。
文字列の配列()があります。ファンクタを使用して、これらの文字列の長さの合計を計算する必要があります。
私のコード:
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() に何を渡す必要がありますか?