Skip to content
Published at:

let:pattern destructure(模式解构)

rust
struct Person(String, i32);

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

fn foo() {
    let p = Person(String::from("shibin"), 18);
    let Person(name, age) = p;

    println!("-------------------");
    let p = Point { x: 10, y: 10 };
    let Point { x, y } = p;
    println!("x = {:?}", x);
}

类型别名

rust
type Age = u32;

fn main() {
    let x : Age = 20;
}

// 别名 + 泛型
type Double<T> = (T, Vec<T>); // tuple,

静态变量

  • 全局变量必须在声明的时候马上初始化;
  • 全局变量的初始化必须是编译期可确定的常量,不能包括执行期才能确定的表达式、语句和函数调用;
  • 带有mut修饰的全局变量,在使用的时候必须使用unsafe关键字。
rust
static GLOBAL: i32 = 0;

常量

Updated at: