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
相关推荐
weixin_4569042716 小时前
基于.NET Framework 4.0的串口通信
开发语言·c#·.net
ss27316 小时前
手写MyBatis第107弹:@MapperScan原理与SqlSessionTemplate线程安全机制
java·开发语言·后端·mybatis
本郡主是喵16 小时前
用 TypeScript 进行 Truffle 测试
学习·区块链
麦麦鸡腿堡17 小时前
Java的动态绑定机制(重要)
java·开发语言·算法
时间之里17 小时前
【c++】:Lambda 表达式介绍和使用
开发语言·c++
Tiger_shl17 小时前
C# 预处理指令 (# 指令) 详解
开发语言·c#
武文斌7717 小时前
复习总结最终版:单片机
linux·单片机·嵌入式硬件·学习
@Kerry~18 小时前
phpstudy .htaccess 文件内容
java·开发语言·前端
CRMEB系统商城18 小时前
CRMEB多商户系统(PHP)v3.3正式发布,同城配送上线[特殊字符]
java·开发语言·小程序·php
sali-tec18 小时前
C# 基于halcon的视觉工作流-章45-网格面划痕
开发语言·算法·计算机视觉·c#