C++14 中是否去掉了 nanosleep() 的功能?

iss*_*sac 0 c++ c++14

我尝试nanosleep()使用 C++14编译以下调用代码,但失败并出现错误:

'nanosleep' 未在此范围内声明
     nanosleep(&ts, NULL);
'nanosleep' was not declared in this scope
     nanosleep(&ts, NULL);

-DNDEBUG -O3 -DNDEBUG -o -c nanosleep-test.cpp -std=c++14 -fPIC -Wall -Wpedantic -Werror. 删除-std=c++14,我编译了它。那么说 C++14 删除了nanosleep()是否正确?

Zan*_*ynx 10

nanosleep 是 POSIX 函数,与 C++ 标准无关。

你想要的 C++ 可以sleep_forthreadchrono头文件中找到。

https://en.cppreference.com/w/cpp/thread/sleep_for