gpt4 book ai didi

条件编译 - 实现替代方案

转载 作者:行者123 更新时间:2023-11-30 17:42:57 27 4
gpt4 key购买 nike

我一直在寻找一个很好的资源,它提供了有关 C 项目的条件编译和跨平台可移植性最佳实践的讨论。

例如:

编写一个使用 TCP 或 SCTP 的网络库(取决于底层平台)。通常的方法可能是定义一个通用的 API 规范,并让 makefile 决定编译正确的实现。

我无法想象使用 MACROS 和代码复制的条件编译在这里是一个好主意(因为这样的网络实现大部分是相同的,具有不同的 SEND 和 RECEIVE 原语)。

有人有好的建议或好的资源来讨论这些问题的最佳实践吗?

感谢您的意见!

最佳答案

如果您将宏限制在很少的地方,那么宏就很好。示例:

#if defined LINUX
# include "linux/mylib.h"
#elif defined WINDOWS
# include "windows/mylib.h"
#else
# error "unsupported platform!"
#endif

关于条件编译 - 实现替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20353968/

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