私はC++ 11の新機能で、Functorについてはthisの記事を読んでいます。これは非常に役に立ちました。ただ1つの変数以上の関数を受け取るファンクタを作ることが可能だと思いました? は、例えば、我々は、以下のクラスを持っている:2つ以上の変数を持つFunctor
class my_functor{
public:
my_functor(int a,int b):a(a),b(b){}
int operator()(int y)
{
return a*y;
}
private:
int a,b;
};
今、私は不思議私たちは
operator()(int y)
が、2以上のと同じようにメンバ関数を作ることができるどのような方法があるの(または未知の数字が!)変数は受け取っていますか?
確かに、どうしてですか?明白なアプローチがうまくいくはずです。試してみるときに特定の問題に直面していますか? – hvd
'operator()'はあなたが書き留める多くの引数を受け取るばかりの関数名です。 – Deduplicator