rust持续学习Box::leak

Box就是unique_ptr

这个函数的功能是消费box返回一个全局变量!

写一个函数,想要真的返回全局变量,感觉用这个是个好的做法

rust 复制代码
fn Foo()->Option<&'static mut A>
{
	let a = Box::new(A());
	Some(Box::leak(a))
}

这样就能当真拿到这个全局变量了

还有一种是lazy macro

use lazy_static::lazy_static;

然后包在里面

这是圣经里的例子

rust 复制代码
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
相关推荐
leaves falling2 小时前
C语言内存函数-
c语言·开发语言
至为芯3 小时前
IP6537至为芯支持双C口快充输出的45W降压SOC芯片
c语言·开发语言
小羊羊Python4 小时前
SoundMaze v1.0.1正式发布!
开发语言·c++
浩瀚地学4 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习
l1t4 小时前
利用DeepSeek将python DLX求解数独程序格式化并改成3.x版本
开发语言·python·算法·数独
JeffDingAI4 小时前
【Datawhale学习笔记】深入大模型架构
笔记·学习
暖阳之下4 小时前
学习周报三十一
学习
yugi9878385 小时前
基于遗传算法优化主动悬架模糊控制的Matlab实现
开发语言·matlab
Master_oid6 小时前
机器学习29:增强式学习(Deep Reinforcement Learning)④
人工智能·学习·机器学习
moxiaoran57536 小时前
Go语言的错误处理
开发语言·后端·golang