gpt4 book ai didi

c - 在构建期间仅在标题中显示 #pragma 消息一次

转载 作者:行者123 更新时间:2023-12-01 08:12:10 27 4
gpt4 key购买 nike

我有一堆#pragma message("A message")config.h 中项目中许多地方都包含的 header ;目标是告知在构建期间选择了哪些配置选项。 header 受 #ifndef #define 保护样式 headerguards。问题是每次包含此 header 时,都会打印消息。有没有更好的方法来做到这一点,以便在构建过程中只打印一次消息?

编辑:我知道构建选项通常使用 cmake、qmake、autotools 等构建工具进行操作和查看,但由于项目的性质,我对构建工具没有真正的选择。

最佳答案

你可以把 #pragma message在一个单独的文件中,您只包含一次来自 config.h .即使在错误条件中,gcc 也可能会打印这些编译指示,但它不会包含错误条件中的文件。所以有点像这样:

/* config.h */
#ifndef CONFIG_H
#define CONFIG_H

#ifndef CONFIG_MESSAGE_PRINTED
#define CONFIG_MESSAGE_PRINTED
#include "config_message.h"
#endif

/* ... */
#endif /* CONFIG_H */

config_message.h :
#pragma message("A message")

关于c - 在构建期间仅在标题中显示 #pragma 消息一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37697475/

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