関数オブジェクト(関数)を渡す必要があるコードがあります。いくつかの状態変数を格納する必要があるため、関数ポインターを使用できません。かなりの数の状態変数があるとしましょう。関数オブジェクトを参照で渡しても大丈夫ですか?値によって渡される関数オブジェクトだけを見てきました。これは私のコードがどのように見えるかです:
struct FunctionObject {
double a, b, x, y;
double operator() (int v, int w) {....}
};
template <class T>
Class MyClass {
T& func;
.....
public:
MyClass(T& func):func(func) {}
.....
};