问题描述
所以我为我的游戏引擎制作了一个小库(未完成)。在主要我包括图书馆 在库中,我有一个“Engine”类,它保存有关窗口、操作系统、设置等的信息。在那个类中,我想在 main.cpp 中调用“update(delta)”一段时间(真) 这可能吗?
这是课程:
class Engine {
Time delta;
bool run = true;
public:
Engine(std::function<bool(float)> _update) {
while (run) {
run = _update(delta.get_call_time());
}
}
};
这就是我在 main 中的调用:
Engine engine(_update);
解决方法
有很多方法可以做到这一点,但我认为最流行的一种是使用 std::function
使用回调:
class Engine {
Delta delta = clock();
public:
Engine(Vector2 window_size,std::function<void(Delta)> update) {
update(delta)
}
};