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
相关推荐
迈火20 分钟前
PuLID_ComfyUI:ComfyUI中的图像生成强化插件
开发语言·人工智能·python·深度学习·计算机视觉·stable diffusion·语音识别
wzg201623 分钟前
vscode 配置使用pyqt5
开发语言·数据库·qt
板鸭〈小号〉2 小时前
Socket网络编程(1)——Echo Server
开发语言·网络·php
明天会有多晴朗2 小时前
C语言入门教程(第1讲):最通俗的C语言常见概念详解与实战讲解
c语言·开发语言·c++
爱上妖精的尾巴2 小时前
5-20 WPS JS宏 every与some数组的[与或]迭代(数组的逻辑判断)
开发语言·前端·javascript·wps·js宏·jsa
就叫飞六吧2 小时前
基于汇编实现led点灯-51单片机-stc89c52rc
嵌入式硬件·学习
Larry_Yanan2 小时前
QML学习笔记(二十四)QML的Keys附加属性
c++·笔记·qt·学习·ui
gopher95113 小时前
Go 语言的 panic 和 recover
开发语言·golang
豆沙沙包?3 小时前
2025年--Lc165--H637.二叉树的层平均值(二叉树的层序遍历)--Java版
java·开发语言
Chunyyyen3 小时前
【第十六周】自然语言处理的学习笔记01
笔记·学习·自然语言处理