* Хотя мой вопрос относится к glfw, на это, вероятно, может ответить кто-то с большим количеством знаний на С ++, чем я.glfwGetTime() и статические переменные
Я имею трудное время понять поведение следующей строки кода:
static double previousSeconds = glfwGetTime();
Предположим, что это находится в бесконечном цикле в то время.
Если я распечатываю предыдущие секунды в цикле while, значение не изменяется. Например, я получил бы 0.420998 для вечности. glfwGetTime() возвращает второй, поскольку glfw был инициализирован. Таким образом, первый раз через время просмотра это должно быть 0.4290998, и во второй раз это должно быть ... скажем, 0.44xxxxx. Такое поведение отличается, когда я удаляю «статический», а затем подсчитывает, как и следовало ожидать. Я не понимаю, почему это статическое поведение вызывает поведение, когда значение остается неизменным. Поскольку я знаю, что статические переменные сохраняют свои значения между вызовами, но я повторно назначаю его значение каждой итерации через цикл while.
Может кто-то прояснит это для меня?
Попробуйте назначить вместо intialization – Hariprasad