我有一个代码转储,在那里我放了一些Rust 代码的例子,以防我忘记了什么.41+线我一直拿error: expected item, found 'let'分.

我试着改变名字,认为这是名字惯例;但这没用.同样的错误.

这里是垃圾场(实际上还没那么大)

#[allow(dead_code)]


fn main()
{

}





/////////////////////////////////////////tutorial functoins i made

fn if_statements()
{
    //let (x, y) = (5, 10);
    let x = 5;
    let y = if x == 5 { 10 } else { 15 };
        if y == 15 {println!("y = {}", y);}
}



////////////////////////////////////////// tutoiral functions
#[allow(dead_code)]
fn add(a: i32, b: i32) -> i32
{
    a + b

}

#[allow(dead_code)]
fn crash(exception: &str) -> !
{
    panic!("{}", exception);
}


//TUPLES//
let y = (1, "hello");
let x: (i32, &str) = (1, "hello");

//STRUCTS//
struct Point {
    x: i32,
    y: i32,
}

fn structs() {
    let origin = Point { x: 0, y: 0 }; // origin: Point

    println!("The origin is at ({}, {})", origin.x, origin.y);
}

//ENUMS//
enum Character {
    Digit(i32),
    Other,
}

let ten  = Character::Digit(10);
let four = Character::Digit(4);

推荐答案

你的根本问题是let只能用于一个函数.因此,在main()中包装代码,并修复样式:

fn if_statements() {
    let x = 5;

    let y = if x == 5 { 10 } else { 15 };

    if y == 15 {
        println!("y = {}", y);
    }
}

#[allow(dead_code)]
fn add(a: i32, b: i32) -> i32 { a + b }

#[allow(dead_code)]
fn crash(exception: &str) -> ! {
    panic!("{}", exception);
 }

struct Point {
     x: i32,
     y: i32,
}

fn structs() {
    let origin = Point { x: 0, y: 0 };

    println!("The origin is at ({}, {})", origin.x, origin.y);
}

enum Character {
    Digit(i32),
    Other,
}

fn main() {
    let y = (1, "hello");
    let x: (i32, &str) = (1, "hello");

    let ten  = Character::Digit(10);
    let four = Character::Digit(4);
 }

Rust相关问答推荐

Rust为什么应用于引用的操作符可以强制,而具有显式类型的let则不能?

即使参数和结果具有相同类型,fn的TypId也会不同

修改切片/引用数组

Box::new()会从一个堆栈复制到另一个堆吗?

有没有办法避免在While循环中多次borrow `*分支`

不能在Rust中使用OpenGL绘制三角形

将Vec<;U8&>转换为Vec<;{Float}&>

如何轮询 Pin>?

try 实现线程安全的缓存

Rust 中多个 & 符号的内存表示

在描述棋盘时如何最好地使用特征与枚举

在 Rust 中,我如何处理请求 javascript 的页面?

Rust 中的方法调用有什么区别?

如何使用 rust bindgen 生成的 std_vector

在 Rust 中返回对枚举变体的引用是个好主意吗?

类型组的通用枚举

有没有办法使用 NASM 语法进行内联汇编?

为什么 std::iter::Peekable::peek 可变地borrow self 参数?

如何在 Rust 的泛型函​​数中同时使用非拥有迭代器和消费迭代器?

list 中没有指定目标 - 必须存在 src/lib.rs、src/main.rs、[lib] 部分或 [[bin]] 部分