Rust基础知识入门

Rust 是一种系统级编程语言,以其安全性、速度和并发性而闻名。以下是一些 Rust 入门的关键知识点,以及具体的代码示例和详细说明:

Rust基础知识入门

Rust 是一种系统级编程语言,以其安全性、速度和并发性而闻名。以下是一些 Rust 入门的关键知识点,以及具体的代码示例和详细说明:

  1. Hello World 程序:这是学习任何编程语言的第一步。在 Rust 中,程序的入口点是 main 函数。

    fn main() {
        println!("Hello, world!");
    }
    

    这段代码使用 println! 宏打印出 “Hello, world!” 到控制台。注意 Rust 中的宏以 ! 结尾 。

  2. 变量绑定:在 Rust 中,使用 let 来绑定变量。变量默认是不可变的,但可以使用 mut 关键字使其可变。

    let x = 5; // 不可变变量
    let mut y = 10; // 可变变量
    

    这里 x 是一个不可变变量,而 y 是可变的 。

  3. 数据类型:Rust 是一种静态类型语言,需要明确或让编译器推断变量的类型。

    let a: i32 = 20; // 显式指定类型
    let b = 20; // 编译器根据值推断类型
    

    i32 是一个有符号的 32 位整数类型 。

  4. 函数:定义函数使用 fn 关键字,函数可以返回值。

    fn add(a: i32, b: i32) -> i32 {
        a + b
    }
    

    这个 add 函数接受两个 i32 类型的参数并返回它们的和 。

  5. 控制流:Rust 提供了常见的控制流结构,如 if/elseloop

    let condition = true;
    if condition {
        println!("Condition is true");
    } else {
        println!("Condition is false");
    }
    
  6. 结构体和枚举:用于创建自定义数据类型。

    struct Point {
        x: i32,
        y: i32,
    }
    
    enum Message {
        ChangeColor(i32, i32, i32),
        MoveCursor { x: i32, y: i32 },
    }
    

    这里定义了一个 Point 结构体和一个包含不同类型变体的 Message 枚举 。

  7. 错误处理:Rust 使用 Result 类型来处理可能失败的操作。

    fn divide(a: i32, b: i32) -> Result<i32, String> {
        if b == 0 {
            Err(String::from("Cannot divide by zero"))
        } else {
            Ok(a / b)
        }
    }
    

    这个 divide 函数在除数为零时返回 Err,否则返回 Ok 包装的商 。

  8. 模块和包管理:使用 mod 创建模块,使用 cargo 作为包管理器和构建系统。

    mod math_functions {
        pub fn add(a: i32, b: i32) -> i32 {
            a + b
        }
    }
    

    math_functions 模块包含一个公共函数 add

  9. 生命周期和借用:Rust 的所有权系统确保内存安全,避免数据竞争。

    fn longest<'a>(s1: &'a str, s2: &'a str) -> &'a str {
        if s1.len() > s2.len() {
            s1
        } else {
            s2
        }
    }
    

    这个 longest 函数展示了生命周期注解的使用 。

这些知识点和示例为 Rust 入门提供了坚实的基础。更多的学习资源和示例可以在 Rust 官方文档和社区教程中找到 。

继续阅读

探索更多技术文章

浏览归档,发现更多关于系统设计、工具链和工程实践的内容。

全部文章 返回首页