[英]Provide default values to config macros
我使用一些宏( #define
)作為編譯時配置常量。
#define WS_T_1H 700
#define WS_T_1L 150
#define WS_T_0H 150
#define WS_T_0L 700
#define WS_LATCH_NS 6000
這些在我的頭文件中。
但是,我希望允許用戶在包含它們時覆蓋它們-到目前為止,我已經有了它,但是它非常冗長和丑陋。
#ifndef WS_T_1H
#define WS_T_1H 700
#endif
#ifndef WS_T_1L
#define WS_T_1L 150
#endif
#ifndef WS_T_0H
#define WS_T_0H 150
#endif
#ifndef WS_T_0L
#define WS_T_0L 700
#endif
#ifndef WS_LATCH_NS
#define WS_LATCH_NS 6000
#endif
我想知道這是正確的方法嗎? 這是“最佳實踐”嗎?
這是C語言的標准用法。如果您不喜歡編寫這樣的代碼(很多人不喜歡),則可以學習autoconf,它提供了另一種定義宏默認值的語法。 然后,autoconf將為您編寫慣用的C代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.