编译问题如图1所示, 错误代码如图2所示。
我想请教一下,图2所示的代码中错误问题在哪里,是否跟 #if _WIN32_WINNT >= 0x0600有关系?
对这段代码理解不够,还望大神们指示
图1
图2
可能是qt版本过低或者是opencv版本过高?望采纳,不懂的可以关注私信我。
由报错消息可知,程序是在编译时没有找到相应的线程结构体的定义导致的,因此是头文件包含出了错误;
根据楼主提供的信息,系统是win7,再看图二,是win平台(if defined(_WIN32)), 执行将HANDLE定义为pthread_t等操作;
然后系统版本(if _WIN32_WINNT >= 0x600)高于vista,执行将 CONDITION_VARIABLE 定义为 pthread_cond_t操作,再结合错误此值未定义,所以怀疑系统可能缺少CONDITION_VARIABLE的相关内容, 可以尝试直接将 >= 0x600改为 0;
可以看看
https://stackoverflow.com/questions/6872010/condition-variable-in-windows-wont-compile
https://docs.microsoft.com/en-us/cpp/porting/modifying-winver-and-win32-winnt?view=msvc-160