提问者:小点点

SF::Clock发出时间的随机字


我试图在sfml中创建一个速率限制器,但它不能正常工作,所以我尝试打印出时间,

结果就是这样。

3E-06

我的代码是

int main()
{
    sf::Clock clock;
    sf::Time time = clock.getElapsedTime();

    while(true) std::cout << time.asSeconds() << std::endl;
}

所以我想知道我是不是真的需要SF::RenderWindow什么的,或者它只是一个bug?


共1个答案

匿名用户

GetElapsedTime的文档说明(强调是我的):

此函数返回自上次调用restart()以来经过的时间(如果未调用restart(),则返回实例的构造)。

因此,换句话说,您正在测量以下时间之间的经过时间:

sf::Clock clock;

和:

sf::Time time = clock.getElapsedTime();

3微秒似乎不是不合理的。

您可能打算将对clock.getElapsedTime的调用放在循环中。