代码之家  ›  专栏  ›  技术社区  ›  Greg

错误:表达式语法中的位置是实验性的,可能会更改。(见第27779期)

  •  3
  • Greg  · 技术社区  · 8 年前

    我正在关注 Rust By Example 我遇到了一个错误,我不知道该如何解决:

    fn main() {
        let x: f32 = 10.;
    
        if (x == 10) {
            println!("if");
        } else if (x > 10) && (x<-5) {
            println!("else if");
        } else {
            println!("else");
        }
    }
    

    下面的编译错误可能是 else if . 如何在中执行两个条件检查 否则,如果 为什么它不起作用?

    error: placement-in expression syntax is experimental and subject to change. (see issue #27779)
     --> src/main.rs:6:28
      |
    6 |     } else if (x > 10) && (x<-5) {
      |                            ^^^^
    
    1 回复  |  直到 8 年前
        1
  •  6
  •   loganfsmyth    8 年前

    因为你在写作 x<-5 x < -5 在空白处,Rust可以看到 <- the placement operator . 一般来说,在运算符周围放置空白是最好的,因为它可以解决这一问题,并大大提高可读性。

    推荐文章