當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust concat_idents用法及代碼示例


本文簡要介紹rust語言中 Macro std::concat_idents 的用法。

用法

macro_rules! concat_idents {
    ($($e : ident), + $(,) ?) => { ... };
}

將標識符連接成一個標識符。

這個宏接受任意數量的逗號分隔標識符,並將它們全部連接成一個,產生一個新標識符的表達式。請注意,衛生使得該宏無法捕獲局部變量。此外,作為一般規則,宏隻允許在項目、語句或表達式位置。這意味著雖然你可以使用這個宏來引用現有的變量、函數或模塊等,但你不能用它定義一個新的。

例子

#![feature(concat_idents)]

fn foobar() -> u32 { 23 }

let f = concat_idents!(foo, bar);
println!("{}", f());

// fn concat_idents!(new, fun, name) { } // not usable in this way!

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 Macro std::concat_idents。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。