Rust 为什么可以';我是否使用返回编译时常量作为常量的函数?

Rust 为什么可以';我是否使用返回编译时常量作为常量的函数?,rust,Rust,我认为编译器应该能够确定arr0的长度作为编译时常量,不是吗?但这仍然标记为错误,表示找到的是变量而不是常量整数 为什么? Rust中是否有constexpr(C++)函数 版本: let arr0 = [0u8; 15]; let arr1 = [0u8; arr0.len()]; // this fails 因为它还没有实施。扩展计算为常量表达式的Rust子集可以向后兼容地完成,因此在1.0之前不必急于这么做,甚至还没有确定应该如何完成(应该允许多少,是否应该有constepr机制,以及它

我认为编译器应该能够确定arr0的长度作为编译时常量,不是吗?但这仍然标记为错误,表示找到的是变量而不是常量整数

  • 为什么?
  • Rust中是否有constexpr(C++)函数
  • 版本:

    let arr0 = [0u8; 15];
    let arr1 = [0u8; arr0.len()]; // this fails
    

    因为它还没有实施。扩展计算为常量表达式的Rust子集可以向后兼容地完成,因此在1.0之前不必急于这么做,甚至还没有确定应该如何完成(应该允许多少,是否应该有
    constepr
    机制,以及它应该有多强大,等等)


    与此同时,宏和语法扩展涵盖了许多相同的用例(后者严格来说比
    constexpr
    任何时候都要强大)。

    没有匆忙,有时间做对,所以从长远来看,希望做得更好
    rustc 1.0.0-nightly (ecf8c64e1 2015-03-21) (built 2015-03-22)