Я уже пытался перезапустить свою программу или создать новую, но я никогда не получаю действительное время, я всегда получаю что-то вроде 5e-06 в качестве вывода в течение нескольких секунд ... В чем проблема? https://i.stack.imgur.com/a3sGy.png Уже спасибо за помощь
#include <SFML/Graphics.hpp>
#include <iostream>
int main() {
sf::Clock clock;
sf::Time time1 = clock.getElapsedTime();
sf::Time time2 = clock.restart();
sf::RenderWindow myWindow(sf::VideoMode(512, 512), "SFML Window", sf::Style::Default | sf::Style::Titlebar);
while (myWindow.isOpen()) {
sf::Event openEvent;
std::cout << time1.asSeconds() << std::endl;
while (myWindow.pollEvent(openEvent))
{
switch (openEvent.type)
{
case sf::Event::Closed:
myWindow.close();
break;
myWindow.clear();
myWindow.display();
}
}
}
}





Вы создаете часы, и в следующей инструкции вы получаете прошедшее время (наносекунды?). Затем вы конвертируете его в секунды (0,000005), и получается, что (5e-06)
Вы вычисляете время вне цикла. Попробуйте переместить clock.getElapsedTime () внутри цикла перед его выводом.
«5e-06» - это «пять раз десять в степени отрицательной шестерки» - en.m.wikipedia.org/wiki/Scientific_notation