"Cleared" 宏是否导出到 .lib 文件?
"Cleared" Are Macros exported to a .lib file?
我有一些宏,如
#define dosomething(x) something(x)
,它被编译成一个dll。我会有那个宏在lib创建的构建?
No.
宏甚至对编译器都不可见。在预处理期间,它们被替换为替换文本,这发生在最开始。宏是愚蠢的,它们对你和你的动机一无所知。他们甚至不知道你在写什么语言。小心!
No.
宏只是在源代码级别上的(并非如此)精心设计的复制粘贴设备。它们在编译之前被展开,编译器并不知道它们的存在。
如果你想在你的库中导出dosomething
符号,你必须将它声明为一个函数。
宏仅由预处理器使用和处理。它们不被编译器使用,也不被链接器知道。所以,答案是否定的。宏不被导出
你需要什么?你不能给#include
头文件吗?
相关文章:
- CMake 生成的 MSVC 项目找不到符号,即使为其相关 dll 正确生成了 lib 文件也是如此
- 从 .lib 文件创建一个.dll文件
- 链接器找不到导入的 DLL 的 LIB 文件
- 有没有适用于Windows.lib文件的GNU二进制文件描述符(BFD)
- 在Qt中链接具有非标准名称的lib文件
- C++-在没有自定义.lib文件的情况下从Lua C模块调用Lua函数
- 是否可以将 EXE 文件作为 lib 文件链接到另一个项目?
- C++ CLR dll 需要 .lib 文件,但非 CLR 不需要
- G++ 无法链接 curl lib 文件
- 如何找出依赖于LIB文件的DLL列表?
- 即使使用lib文件也无法修复未解析的外部符号_AES_encrypt
- C++ .lib 文件到墨西哥
- 效果11d.lib文件,DirectX11在2017/2015上
- 如何强制链接器在 lib 文件中查找非修饰名称
- 您如何找到哪个.lib文件随身携带
- lib文件是以独占静态方式链接的,还是需要专门编译(VS2015)
- 在Mac上,Rcpp没有lib文件夹
- 在Visual Studio 2010中创建.lib文件
- SFML-Graphics-2.dll缺少SFML LIB文件夹
- 在VS2013中使用LIB文件