c++ - C++ 中是否有等待函数?

标签 c++ cross-platform wait

我一直在开发一个程序,它使用了 sleep() 函数。我希望它是 macOS、Linux 和 Windows 的跨平台,但是拥有三个分支使用起来很乏味,而且做起来很糟糕。我该怎么做才能使其跨平台?哪些功能可以让程序等待几秒钟?当我测试它时,它甚至不起作用......
Linux 代码似乎不起作用...

#include <iostream>
#include <unistd.h>

using namespace std;


int loading() {
  sleep(0.25);
  cout << "Loading... ";
  sleep(0.25);
  cout << "hi";
  sleep(0.25);
  cout << "e";
  sleep(0.25);
  return 0;
}
int main() {
  loading();
  return 0;
}
Windows也不行...
#include <iostream>
#include <windows.h>

using namespace std;


int loading() {
  Sleep(250);
  cout << "Loading... ";
  Sleep(250);
  cout << "hi";
  Sleep(250);
  cout << "e";
  Sleep(250);
  return 0;
}
int main() {
  loading();
  return 0;
}
是语法错误,还是我使用不当?

最佳答案

从 C++11 开始,你可能会使用 std::this_thread::sleep_for

using namespace std::chrono_literals;

std::this_thread::sleep_for(250ms);

关于c++ - C++ 中是否有等待函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67320261/

相关文章:

c++ - 如何在 C++ 中使用数组演示内存错误

Jenkins 多分支管道不尊重 Jenkinsfile 中的静默期

c++ - 如何仅使用双向分支找到最大的数字

c++ - 删除鼠标滚轮 QGraphicsview 上的滚动功能

c++ - CMake - 如何链接到项目中打包的外部库?

visual-studio - Windows 上的 cmake RUNTIME_OUTPUT_DIRECTORY

c++ - 在某些情况下 CMake 找不到 Boost 的可能原因?

c++ - 是否有任何头文件可以独立于平台读取文本文件?

tomcat 在停止部署启动过程中等待几秒钟是否必要?

java - 如何等待 FileChooser 选择?