Rust 语言的单例设计模式怎么实现?
时间: 2023-06-02 21:03:31 浏览: 237
设计模式——单例实现
可以使用 Rust中的`lazy_static`宏来实现单例设计模式,具体实现方法如下:
```rust
use lazy_static::lazy_static;
struct Singleton {}
lazy_static! {
static ref INSTANCE: Singleton = Singleton {};
}
fn main() {
// 首次使用时单例对象会被创建
let instance = &*INSTANCE;
}
```
在`lazy_static`的宏中定义一个名为`INSTANCE`的全局静态变量,其中对`Singleton`结构体进行初始化,该变量会在第一次使用时进行初始化。之后通过`&*INSTANCE`来获得单例对象。
阅读全文