#include <ctime>
#include <iostream>
int main()
{
std::clock_t last = std::clock();
while (true)
{
if (static_cast<double>(std::clock() - last) / CLOCKS_PER_SEC > 2)
{
last = std::clock();
std::cout << "Kolejny napis co 2 sekundy." << std::endl;
}
}
}
Trzeba też tutaj wspomnieć, że rozwiązanie z użyciem funkcji clock() jest słabe. Lepiej użyć std::chrono::high_resolution_clock. W każdym razie, do tak prostych rzeczy się nadaje. Warto jeszcze pomyśleć o std::this_thread::sleep_for, by zapobiec nadmiernemu zużyciu procesora. Pętla, którą u góry napisałem będzie cały czas wykonywana, co spowoduje zabranie dużej ilości czasu procesora.