好的,所以我听说“windows.h”很大,不应该包含在我在uni写的程序中,但是那个库中有一个功能可以很好地用于我在uni的机器人模块,无论如何只能从库中调用“Sleep()”函数
代码:
std::cout<<"Time Elapsed"<<std::endl;
//setDeltaheading to a random direction
desiredState.setVel(0,1.0);
desiredState.setDeltaHeading((rand() % 120) - 45);
// need to wait for turn to complete
state = init;
答案 0 :(得分:2)
您可以使用特殊的宏关闭一些来自windows.h的标题:
VC_EXTRALEAN
WIN32_LEAN_AND_MEAN
答案 1 :(得分:1)
如果您使用的是C ++ 11,那么您应该使用std :: thread :: sleep_for(xxx);
#include <chrono>
#include <thread>
std::this_thread::sleep_for(std::chrono::milliseconds(2000));
更多信息here
答案 2 :(得分:0)
只需加入windows.h
即可。是的,它很大,而且,像任何其他标题一样,只有在您需要它时才应该包含它。标题的大小只会影响编译时间(给定合理的优化选项)。
如果您可以访问C ++ 11编译器,也可以使用std::this_thread::sleep_for。
答案 3 :(得分:0)
然后更好的方法是在头文件中声明Sleep
函数。您可以从头文件中复制其定义。
但是,您不必担心大头文件,除非它显着减慢您的速度。