本文簡要介紹rust語言中 Macro std::cfg
的用法。
用法
macro_rules! cfg {
($($cfg : tt) *) => { ... };
}
在編譯時評估配置標誌的布爾組合。
除了#[cfg]
屬性之外,還提供此宏以允許對配置標誌進行布爾表達式評估。這通常會導致更少的重複代碼。
此宏的語法與 cfg
屬性的語法相同。
cfg!
與 #[cfg]
不同,它不會刪除任何代碼,隻會評估為真或假。例如,當 cfg!
用於條件時,if/else 表達式中的所有塊都必須有效,而不管 cfg!
正在評估什麽。
例子
let my_directory = if cfg!(windows) {
"windows-specific-directory"
} else {
"unix-directory"
};
相關用法
- Rust char.is_control用法及代碼示例
- Rust char.is_alphanumeric用法及代碼示例
- Rust char.len_utf16用法及代碼示例
- Rust char.is_digit用法及代碼示例
- Rust char.is_ascii_graphic用法及代碼示例
- Rust concat用法及代碼示例
- Rust char.decode_utf16用法及代碼示例
- Rust char.is_uppercase用法及代碼示例
- Rust catch_unwind用法及代碼示例
- Rust char.to_ascii_lowercase用法及代碼示例
- Rust char.is_ascii_uppercase用法及代碼示例
- Rust canonicalize用法及代碼示例
- Rust create_dir用法及代碼示例
- Rust ctlz用法及代碼示例
- Rust channel用法及代碼示例
- Rust char.escape_unicode用法及代碼示例
- Rust copy_nonoverlapping用法及代碼示例
- Rust char.is_alphabetic用法及代碼示例
- Rust char.is_ascii_control用法及代碼示例
- Rust char.from_u32_unchecked用法及代碼示例
- Rust char.is_ascii_alphabetic用法及代碼示例
- Rust cttz_nonzero用法及代碼示例
- Rust char.eq_ignore_ascii_case用法及代碼示例
- Rust current用法及代碼示例
- Rust char.is_ascii用法及代碼示例
注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 Macro std::cfg。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。