タイトルがはっきりしないのはわかっていますが、一文でどうやって書き留めればいいのかわかりませんでした。だから問題は、私はこのようなものが欲しいということです:
void(typeof(this)::*function)(int,int);
私はそれがうまくいかないことを知っていますが、C ++でこの問題の解決策が存在するかどうかをさまよっていましたか?
アップデート:
class MainPage
{
public:
MainPage()
{
void (std::remove_reference<decltype(*this)>::*callback)(int, int) = &MainPage::myFunction;
((*this).*callback)(nullptr,nullptr);
}
~MainPage()
{
}
void myFunction(int a, int b)
{
}
}
エラー:
エラー C2440: '改行': 'MainPage *' から 'std::remove_reference<_Ty> *' に変換できません
エラー C2647: '.*': 'MainPage' の 'void (__thiscall std::remove_reference<_Ty>::* )(int,int)' を逆参照できません