rust 怎么定义一个全局变量,在哪里定义啊,函数外面?还是函数里面?
在 Rust 中,可以通过 static 关键字定义全局变量。全局变量可以在函数外部定义,也可以在函数内部定义。但是,如果你想在函数内部定义全局变量,必须将其定义为 static。
下面是一个在函数外部定义全局变量的例子:
static mut GLOBAL_VAR: i32 = 0;
fn main() {
unsafe {
GLOBAL_VAR = 42;
println!("Global variable: {}", GLOBAL_VAR);
}
}
注意,由于全局变量具有可变性,所以在 Rust 中必须使用 unsafe 块来访问全局变量。在 unsafe 块中,可以修改全局变量的值。
如果你想在函数内部定义全局变量,可以像这样:
fn main() {
static mut GLOBAL_VAR: i32 = 0;
unsafe {
GLOBAL_VAR = 42;
println!("Global variable: {}", GLOBAL_VAR);
}
}
同样需要使用 unsafe 块来访问全局变量。
原文地址: https://www.cveoy.top/t/topic/g87 著作权归作者所有。请勿转载和采集!