AssertEqueal является неполным. Это шаблон функции, но описания шаблонных параметров нет.ax^2 + bx + c = 0. Решаем, пишем: x = 42. И так далее.Assert - переводится как "Утверждать". Утверждать что-то. Значит, где-то должно быть утверждение. Но у AssertEqueal этого утверждения нет. Более того, имя функции переводится как "Утверждать равным". Чему равным?TerminateOnDifferent - выпилиться по разнице значений.Condition, условие. Правый - это Reference, норма/эталон.Terminate однозначно читается в контексте процесса. Прозрачно и то, что по наступлении эквивалентности выхода из этой функции не будет. Следовательно, все, что можно еще сделать, это передать семантику терминации в виде причины. Третий параметр - это Reason. Вот так, без всяких лишних hint и Msg, т.к. аргумент самодокументируется своим типом.template< typename TCondition, typename TReference >
void TerminateOnDifferent( TCondition&& condition, TReference&& reference, const std::string_view reason )
{
if( condition == reference )
{
return;
}
std::cout << "Termination happened due to reason: " << reason << "." << std::endl;
std::terminate();
} true вставлена как магическое значение. В другом месте новый параметр будет вычислен. Где-то еще значение будет прочитано из сетевого сокета или файла. T, u, в самом AssertEqual - ничего не отражающих именах. В изломанной структуре кода, в кривом выравнивании блоков. Только hint отражает свою суть, однако ничего не означает в контексте конструкции утверждений.while (run). Большинство обращений к SDL в неактивном состоянии шунтируются и приводят лишь к фиктивной нагрузке переходами.while (run) - это катастрофа, так быть не должно. А вот как быть должно, сказать невозможно, т.к. оценить состояние твоего кода возможным сейчас не представляется. в цикле что-то рисуется? :)
Причем такая проблема происходит если в цикле что-то рисуется.
Это не считая ошибок пунктуации и ошибок смысла. Ты ведь хочешь сделать игру, основной упор в которой будет на чтении. При создании игры нужно максимум внимания обратить на свою орфографию. Или у игроков кровь из глаз польется.
По SDL/SFML выкладки у тебя максимально некорректные. Одна текстура на экране ни о чем не говорит. Ты ограничение FPS/UPS сделал?