copy_if
フィルタの使用方法インデックスの特定倍数をフィルタリングします。`copy_if`フィルタの` str`の複数のインデックスのフィルタリング方法
str
が「1000020000300004000050000」の場合、newStr
を「12345」にします。
によれば5 * 0、が5 * 1、ソースコード5 * 2など
であるである:
std::string str("1000020000300004000050000");
std::string newStr;
std::copy_if(str.begin(), str.end(),
std::back_inserter(newStr),
[] (char c) {
// Some specific rule I want to return.
return ...;
}
);
理想的なコード:
std::copy_if(str.begin(), str.end(),
std::back_inserter(newStr),
[] (char c) {
// I can get the index of iteration.
return (index % 5 == 0);
}
);
単純なforループで何が問題になっていますか? –
私は知りたいことは 'copy_if'で同じことをすることができるかどうかです。ご意見ありがとうございます。 :) – Husky