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
相关推荐
Tonya438 分钟前
测开学习DAY38
学习
编织幻境的妖14 分钟前
Python代码性能优化工具与方法
开发语言·python·性能优化
Fcy64816 分钟前
二叉搜索树(C++实现)
开发语言·数据结构·c++·二叉搜索树
程序员-周李斌24 分钟前
ArrayBlockingQueue 源码解析
java·开发语言·后端·哈希算法·散列表
骑鱼过海的猫12335 分钟前
【git】git学习记录
git·学习·elasticsearch
Tim_1039 分钟前
【C++入门】02、C++程序初识
开发语言·c++
lkbhua莱克瓦241 小时前
项目知识——Next.js App Router体系
开发语言·javascript·项目知识
Cricyta Sevina1 小时前
Java 语言多线程核心概念全解析
java·开发语言
缘三水1 小时前
【C语言】15.指针(5)
c语言·开发语言·指针·语法