CV_EXPORTS 实际上就是 __declspec(dllexport),主要有以下两个作用:
1、使用 __declspec(dllexport) 关键字从 DLL 导出数据、函数、类或类成员函数。
2、__declspec(dllexport) 会将导出指令添加到对象文件中,因此在指定的对象文件里您不需要使用 .def 文件。
不是人话对不对?
变为人话(CV_EXPORTS的作用):若要导出类中的所有公共数据成员和成员函数,关键字必须出现在类名的左边。由于对名称修饰没有标准规范,因此导出函数的名称在不同的编译器版本中可能有所变化。如果使用 (CV_EXPORTS)__declspec(dllexport),仅当解决任何命名约定更改时才必须重新编译 DLL 和依赖 .exe 文件。(防止编译出错)