0
クラスメソッドへのポインタベクトルの作成方法は?私は(ベクトルが異なる戻り値とシグネチャを持つメソッドのポインタを格納しなければならない)クラスのメンバーとして、私のベクトルを持っている:クラスメソッドへのポインタのベクトルQT
QVector<void(*)()> m_operationsVector;
それから私は、例のクラスのメソッドがあります。
QString sampleMethod(QJsonObject &jsonObject, QString delim);
をそして私が追加しようとしていますベクトルにこのメソッドのポインタ:
m_operationsVector.push_back(sampleMethod);
しかし残念ながらベクトルにこのポインタを追加している間、私はこのエラーを取得しています:
error: invalid use of non-static member function
この問題を解決するにはどうすればよいですか?クラスメソッドへのすべてのポインタの最初には、異なって定義されているので、このベクトルは次のようになります
fooはあなたのクラスである場合は、次のように、あなたは試すことができます: 'QVector <空(のconstはFoo&)> m_operationsVector;' 'm_operationsVector.push_back(&Fooの:: processSetBlindStateRequest);' –
_vectorが持つメソッドのポインタを格納する必要がありますさまざまな戻り値と署名_そして、どのようにそれらを呼び出すかを決めるのですか? –
シグナル/スロットを使用すると思われましたか? –