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
相关推荐
qq_401700418 分钟前
Qt 多线程编程
开发语言·qt
刘布斯yy11 分钟前
新写了个直播录制工具,可录制抖音快手斗鱼直播
rust·音视频·直播录制
whuhewei19 分钟前
手写Promise
开发语言·javascript·ecmascript
AI科技星22 分钟前
空间圆柱螺旋运动第一性原理终极推导·证明·核验·全量纲闭环
开发语言·人工智能·算法·计算机视觉·量子计算
星幻元宇VR22 分钟前
VR消防安全行走平台打造真实火灾逃生体验
科技·学习·安全·vr·虚拟现实
basketball61635 分钟前
C++ 多态完全指南:同一个接口,千变万化的行为
java·开发语言·c++
川冰ICE36 分钟前
JavaScript入门⑤|数组方法全攻略,map/filter/reduce三剑客
开发语言·javascript·ecmascript
晓梦林41 分钟前
kakeru靶场学习笔记
笔记·学习
KANGBboy1 小时前
java知识二(程序流程控制)
java·开发语言
Evand J1 小时前
【MATLAB代码介绍】到达时间(TOA)定位,三维空间,带EKF的轨迹滤波与误差分析
开发语言·matlab