gpt4 book ai didi

c-preprocessor - 为什么有人会使用#if 1 C 预处理器指令?

转载 作者:行者123 更新时间:2023-12-03 13:39:31 25 4
gpt4 key购买 nike

我正在浏览一些 中号源代码,我不明白以下部分

#if 1

typedef unsigned short PronId;
typedef unsigned short LMId;
# define LM_NGRAM_INT

#else

typedef unsigned int LMId;
typedef unsigned int PronId;
# undef LM_NGRAM_INT

#endif

为什么有人会这样做 #if 1 ?不是只有第一个 block 会被处理吗?

最佳答案

软件的基本属性之一是 计算机程序修改成本低 .

这就是为什么某些代码的编写方式会使修改更容易。这就是为什么他们需要各种模式,比如“接口(interface)”或“代理”。

这就是为什么你有时会看到像 #if 1 这样的奇怪结构。 - #else - #endif ,其唯一目的是轻松切换将要编译的代码部分,只需一点点努力:将 1 更改为 0。

关于c-preprocessor - 为什么有人会使用#if 1 C 预处理器指令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2266060/

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