【问题标题】:What does Rust's unary || (parallel pipe) mean?Rust 的一元是什么 || (水管)是什么意思?
【发布时间】:2016-05-02 17:56:27
【问题描述】:

Non-Lexical Lifetimes: Introduction 中,Niko 包含以下 sn-p:

fn get_default3<'m,K,V:Default>(map: &'m mut HashMap<K,V>,
                                key: K)
                                -> &'m mut V {
    map.entry(key)
       .or_insert_with(|| V::default())
}

|| V::default() 在这里是什么意思?

【问题讨论】:

    标签: rust


    【解决方案1】:

    这是一个零参数的闭包。这是一个显示基本语法和用法的简化示例 (play):

    fn main() {
        let c = || println!("c called");
        c();
        c();
    }
    

    打印出来:

    c called
    c called
    

    另一个example from the documentation

    let plus_one = |x: i32| x + 1;
    
    assert_eq!(2, plus_one(1));
    

    【讨论】:

      【解决方案2】:

      这是一个零参数的 lambda 函数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-10-02
        • 2022-07-22
        • 2020-06-20
        • 1970-01-01
        • 2023-01-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多