当前位置: 代码迷 >> 综合 >> opencv13-#pragma comment()的使用和注意
  详细解决方案

opencv13-#pragma comment()的使用和注意

热度:94   发布时间:2023-09-18 14:20:24.0

#pragma comment(comment-type[,”commentstring”])

Comment-type:一个预定义的标识符,指定注释的类型。应该是compiler,exestr,lib,linker之一。

Commentstring:是一个为comment-type提供附加信息的字符串

-compiler:放置编译器的版本或者名字到一个对象文件,该选项是被linker忽略的。

-exstr:被取消了

-lib:放置一个库搜索记录到对象文件中。

-linker:指定一个连接选项,这样就不需要在命令行输入或在开发环境中设置。

 

我们经常用到的是#pragmacomment(lib,”*.lib”).例如:

#pragma comment(lib,"opencv_core249d.lib")就表示链接这个库

opencv_core249d.lib。这样写和在工程中通过设置setting是一样的,方便的是若别人使用你的代码就不用在去设置工程setting了。

但是如果是自己写的库,最好还是使用附加依赖项去添加,具体原理还没有想明白,望高手指点。

扩展:

#pragma预处理

#pragma是比较复杂的预处理指令,作用是设定编译器的状态或者是指示编译器完成一些特定的动作。

常见的是#pragma once。只要在头文件的最开始使用这条指令就能够保证头文件被编译一次。但是很少使用,因为存在兼容性的问题。

每一个编译器对#pragma的实现不同,在一个编译器中有效在另一个可能无效,这些要从编译器的文档中查看。

  相关解决方案