"Cleared" 宏是否导出到 .lib 文件?

"Cleared" Are Macros exported to a .lib file?

本文关键字:lib 文件 Cleared 是否      更新时间:2023-10-16

我有一些宏,如
#define dosomething(x) something(x),它被编译成一个dll。我会有那个宏在lib创建的构建?

No.

宏甚至对编译器都不可见。在预处理期间,它们被替换为替换文本,这发生在最开始。宏是愚蠢的,它们对你和你的动机一无所知。他们甚至不知道你在写什么语言。小心!

No.

宏只是在源代码级别上的(并非如此)精心设计的复制粘贴设备。它们在编译之前被展开,编译器并不知道它们的存在。

如果你想在你的库中导出dosomething符号,你必须将它声明为一个函数。

宏仅由预处理器使用和处理。它们不被编译器使用,也不被链接器知道。所以,答案是否定的。宏不被导出

你需要什么?你不能给#include头文件吗?