跳转至

1. 给Application添加OnEvnet事件抽象

  • 记得使用bind绑定一下,可以用宏简化
    #define BIND_EVENT_FN(x) std::bind(&Application::x, this, std::placeholders::_1)
            m_Window->SetEventCallback(BIND_EVENT_FN(OnEvent));
    

2.WindowsWindow的glfw窗口回调

中间返回值需要强制转换一下

        //Set GLFW Callbacks
        glfwSetWindowSizeCallback(m_Window, [](GLFWwindow* window, int width, int height)
        {
            WindowData& data = *(WindowData*)glfwGetWindowUserPointer(window);

            WindowResizeEvent event(width,height);
            data.EventCallback(event);
        }
其他的事件也类似于这样

3.又被输出卡住了

教程写的有问题,记得Tostring。,

        CORE_DEBUG_TRACE("{0}",e.ToString());

4.C11后构造函数必须加default

这里也卡了好久。。。,对于C11来说没加=default那就只是声明,并没有定义。所以close事件就必须得声明=default。