Box就是unique_ptr
这个函数的功能是消费box返回一个全局变量!
写一个函数,想要真的返回全局变量,感觉用这个是个好的做法
fn Foo()->Option<&'static mut A>
{
let a = Box::new(A());
Some(Box::leak(a))
}
这样就能当真拿到这个全局变量了文章来源:https://www.toymoban.com/news/detail-608301.html
还有一种是lazy macro
use lazy_static::lazy_static;
然后包在里面
这是圣经里的例子文章来源地址https://www.toymoban.com/news/detail-608301.html
static NAMES: Mutex<String> = Mutex::new(String::from("Sunface, Jack, Allen"));
GG error[E0015]: calls in statics are limited to constant functions, tuple structs and tuple variants
lazy_static! {
static ref NAMES: Mutex<String> = Mutex::new(String::from("Sunface, Jack, Allen"));
}
OK
到了这里,关于rust持续学习Box::leak的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!