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
相关推荐
怎么没有名字注册了啊2 分钟前
C++ 进制转换
开发语言·c++
觉醒大王6 分钟前
硕士/博士研究生避坑指南
笔记·深度学习·学习·自然语言处理·职场和发展·学习方法
代码游侠6 分钟前
C语言核心概念复习(二)
c语言·开发语言·数据结构·笔记·学习·算法
Gain_chance8 分钟前
31-学习笔记尚硅谷数仓搭建-DWD层工具域优惠券使用(支付)、互动域收藏商品、流量域页面浏览、用户域用户注册、用户域用户登录事务事实表建表语句及分析
笔记·学习
冰暮流星8 分钟前
javascript之双重循环
开发语言·前端·javascript
墨月白16 分钟前
[QT]QProcess的相关使用
android·开发语言·qt
小小码农Come on16 分钟前
QT信号槽机制原理
开发语言·qt
KoiHeng23 分钟前
Java的文件知识与IO操作
java·开发语言
-Try hard-30 分钟前
完全二叉树、非完全二叉树、哈希表的创建与遍历
开发语言·算法·vim·散列表
Gary Studio33 分钟前
rk芯片上手
学习