Rust 编程视频教程(进阶)——025_4 访问或者修改可变静态变量

视频地址

头条地址:https://www.ixigua.com/i6775861706447913485
B站地址:https://www.bilibili.com/video/av81202308/

源码地址

github地址:https://github.com/anonymousGiga/learn_rust

讲解内容

(1)全局变量在 Rust 中被称为 静态(static)变量。
例子:

static HELLO_WORLD: &str = "Hello, world!";
fn main() {
    println!("name is: {}", HELLO_WORLD);
}

说明:通常静态变量的名称采用 SCREAMING_SNAKE_CASE 写法,并 必须 标注变量的类型,在这个例子中是 &'static str。静态变量只能储存拥有 'static 生命周期的引用。
(2)常量和静态变量的区别:
a、静态变量中的值有一个固定的内存地址(使用这个值总会访问相同的地址),常量则允许在任何被用到的时候复制其数据。
b、静态变量可以是可变的,虽然这可能是不安全的(所以要用unsafe)。
例子:

//读取或修改一个可变静态变量
static mut COUNTER: u32 = 0;
fn add_to_count(inc: u32) {
    unsafe {
        COUNTER += inc;
    }
}
fn main() {
    add_to_count(3);
    unsafe {
        println!("COUNTER: {}", COUNTER);
    }
}
发布了132 篇原创文章 · 获赞 135 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/lcloveyou/article/details/104667679