私は現在、問題があります。VS2010は、 "Nuke"のコンストラクタで使用される "TFunctionPointer"がdatamemberとして定義されていないので&です。誰かがなぜこれが私に説明できますか?どんな助力も非常に感謝しています。私がやろうとしている何テンプレートメンバ関数ポインタ
template<typename T>
typedef void (T::* TFunctionPointer)();
class Nuke
{
public:
Nuke(TFunctionPointer pFunction);
virtual ~Nuke();
private:
TFunctionPointer m_pFunction;
};
// EDIT
は、クラスの任意の型への関数ポインタが格納されているとハァハァオブジェクトの破壊に呼び出すことができるようです。 RAIIのひねり。しかし、私はそれが可能ではないと思う。助けてくれてありがとう。
// EDIT
どうやらブースト:: shared_ptrのは、私が探していたものです。
この答えはもうそれが書かれた時点で、おそらく正しいだったが、ありません。これを明確にするために編集が行われるかもしれない。 –