gpt4 book ai didi

c++ - 如何跨项目读取预定义(#define)?

转载 作者:行者123 更新时间:2023-11-28 01:07:22 28 4
gpt4 key购买 nike

我在同一个解决方案中有 2 个项目:A 是静态库,B 是 exe。 B 依赖于 A

在 B 中,我声明了 DEBUG 模式。类似于#define DEBUG

然后我去检查 A 中是否定义了 DEBUG,如果定义了则进行一些调试打印:

// Code in A
#ifdef DEBUG
cout<<"debug message";
#endif

但这似乎行不通。我想当 A 构建时,它不了解 B。我们该怎么做呢?基本上是因为我有不同的可执行项目依赖于 A,其中一些需要打印调试消息,而另一些则不需要。然而,我不想每次从 B 切换到另一个可执行项目时都重新构建 A。

最佳答案

通常的解决方案是构建两个 A,一个用于调试,一个用于非调试。然后其他项目可以选择链接到哪个项目。

关于c++ - 如何跨项目读取预定义(#define)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5447752/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com