C++ 带stdcall的OpenCV
我想在一个默认调用约定为stdcall的项目中使用OpenCV。然而,openCV默认使用cdecl,并且似乎没有一个宏允许我轻松地更改此行为 除了在头文件中为我必须使用的所有函数/类添加显式的C++ 带stdcall的OpenCV,c++,opencv,C++,Opencv,我想在一个默认调用约定为stdcall的项目中使用OpenCV。然而,openCV默认使用cdecl,并且似乎没有一个宏允许我轻松地更改此行为 除了在头文件中为我必须使用的所有函数/类添加显式的\uu stdcall之外,还有更简单的方法来更改此行为吗 我发现这样的情况(很旧),有人面临类似的问题,但求助于更改他们项目的默认调用约定 谢谢 更新:我尝试自己构建OpenCV,并更改项目文件中的调用约定,但是它不能编译为> 1000个错误< /p>您使用什么平台/编译器?VisualStudio 2
\uu stdcall
之外,还有更简单的方法来更改此行为吗
我发现这样的情况(很旧),有人面临类似的问题,但求助于更改他们项目的默认调用约定
谢谢
更新:我尝试自己构建OpenCV,并更改项目文件中的调用约定,但是它不能编译为> 1000个错误< /p>您使用什么平台/编译器?VisualStudio 2015, 32位窗口可以在C++设置中设置默认调用约定。这只适用于您自己/与项目一起编译openCV库的情况。我已经尝试过了(将openCV项目更改为使用stdcall)。然而OpenCV并不喜欢它,关于使用不同类型修饰符重新定义以及“无法从void(u-stdcall*)(const-void*)转换为int(u-cdecl*)(const-void*)”(const-void*)的错误会弹出一百万个,听起来非常粗糙,但是你能尝试在OpenCV文件所在的文件夹中找到并用
u-stdcall
替换u-cdecl吗?我认为这可能会导致更多问题,但可能值得一试。