#include <iostream>
struct Scene
{
    void (Scene::*m_pRenderFunc)();
    Scene() : m_pRenderFunc(&Scene::fn1) {}
    void fn1() {
        std::cout << "fn1 is called\n";
    }
    void fn2() {
        (this->*m_pRenderFunc)();
    }
};
int main()
{
    Scene sc;
    sc.fn2();
}
