copy_if
C++ にないのは非常に面倒です。それがC++ 0xになるかどうかは誰にもわかりませんか?
1512 次
3 に答える
7
C ++ 0xはまだ完成していないため、最新のドラフトのみを見ることができます。
于 2009-04-27T16:55:10.050 に答える
5
copy_if()
それまでの間、以下を使用して独自に作成することはそれほど難しくありませんremove_copy_if()
。
#include <functional>
struct my_predicate : std::unary_function<my_arg_type, bool> {
bool operator()(my_arg_type const& x) const { ... }
};
// To perform "copy_if(x, y, z, my_predicate())", write:
remove_copy_if(x, y, z, std::not1(my_predicate()));
を使用not1()
するには、述語クラスがネストされた型を提供しargument_type
、引数の型を識別する必要があります。上記のように、これを行う便利な方法の1つは、から派生することです。unary_function<T, U>
ここT
で、は引数の型です。
于 2009-04-28T10:24:29.340 に答える