0

ライブラリのこの機能を使用しています

template <
    typename funct, 
    >
double find_min (
    const funct& f, 
);

function_aが静的関数であるfind_min (function_a)を呼び出すと、機能します。しかし、関数の実行でfind_minをカプセル化し、関数ポインターをfind_minに渡そうとすると、エラーが発生します。たとえば、

class ABC {
    void run(double (*function_ptr)(double))
    {
        find_min((*function_ptr));
    }
}

これは、静的関数のみをfind_minに渡すことができるということですか?

4

1 に答える 1

1

そのようなことがうまくいかない理由はありません。 こちらをご覧ください。 私が変更した唯一のものは次のとおりです。

  • の宣言で、テンプレート パラメータ リストと関数パラメータ リストの末尾にある無効なカンマが削除されましたfind_min
  • 公開しABC::runました。
于 2012-08-07T05:23:16.270 に答える