私は解決したい特定の問題があります。実行されている情報や例が見つからないため、 。派生クラスのメンバ関数へのポインタですが、派生(仮想)関数ではありません
class ParentObject {};
class DerivedObject : public ParentObject
{
void myFunction(){}
};
class OtherDerivedObject
{
void myOtherFunction(){}
};
をしてParentObjectへの関数ポインタ:: *をしたいし、それがいずれかの派生クラスから関数を取ることができる持っている: は基本的に、私が持っています。 そうすることを望むための私の理由は、私は(理想的にParentObjectではなく、必要に応じて派生したオブジェクトで個別に行うことができます)別のクラスに
class functionRegistry
{
std::map<string, *functionPoint> functionMap;
}
、各オブジェクトを持っているがfunctionRegistryのインスタンスを持っている、と私はfunctionPointがする必要がありますDerivedObject型またはOtherDerivedObject型のオブジェクトの関数を指すことができるようにします。事前
[古典的なXY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)のように見えます。 – YSC
あなたのユースケースは何ですか? –
私は現在、以下の解決策を持っていますが、興味深いことに:コンポーネントが単純なメッセージで互いに話すコンポーネントエンティティベースのアーキテクチャを使用してゲームエンジンを作成しています。メッセージは、FORCE_X + 50のようなもので構成されています。ここでは、メッセージを解析して関数に関連する最初の半分と、引数になる2番目のメッセージを作成します。私が必要とする場所での機能性。異なるコンポーネントは異なるメッセージを受け取り、異なることを行います。 – ChrysmPsy