gpt4 book ai didi

c - 将应用程序预处理器信息转发到静态库

转载 作者:行者123 更新时间:2023-11-30 15:39:05 28 4
gpt4 key购买 nike

我正在测试应用程序中的 XCode 中开发静态库。我可以同时处理测试应用程序和库,方法是将库项目拖到测试应用程序项目中,然后将库添加到测试应用程序项目构建阶段。 。

enter image description here

有什么方法可以将预处理器标志从测试应用程序转发到库吗?例如,我尝试将标志 MY_DEBUG_FLAG 添加到测试应用程序项目,然后在我的静态库 header 中添加了 . 。 。

#if defined(MY_DEBUG_FLAG)
#define MY_DEBUG_FLAG_USED
#endif

...但是,库中的#ifdef MY_DEBUG_FLAG_USED block 将被忽略。我总是可以将标志添加到库和应用程序项目中,但这是一种令人讨厌的重复,我想尽可能避免。我希望我的目标很明确,如果有人有任何建议,我非常愿意接受完全不同的习惯用法。

最佳答案

由于定义的预处理是在编译之前执行的,因此无法将预处理器标志传递给已编译的库。

您可以做的是将一组变量添加到库中,库可以在运行时检查这些变量,并将这些变量设置为应用程序中的相关值,或者让库提供用于启用或禁用其不同方面的函数。

关于c - 将应用程序预处理器信息转发到静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21603906/

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