Rust指针选择

Rust指针选择:

1.优先使用引用:安全访问数据

rust 复制代码
fn process(data: &[i32]) { /* ... */ }

2.需要所有权转移时用 Box

rust 复制代码
fn create() -> Box<Data> { Box::new(Data::new()) }

3.共享数据用 Rc/Arc

rust 复制代码
// 单线程
let shared = Rc::new(data);

// 多线程
let thread_safe = Arc::new(Mutex::new(data));

4.内部可变性用 RefCell

rust 复制代码
let cell = RefCell::new(42);
*cell.borrow_mut() = 100;

5.底层操作/FFI 用裸指针

rust 复制代码
extern "C" {
    fn c_function(ptr: *const libc::c_char);
}

注:学好rust从入门到入土!!!

相关推荐
一晌小贪欢15 小时前
【Python数据分析】数据分析与可视化
开发语言·python·数据分析·数据可视化·数据清洗
alwaysrun15 小时前
Rust中元组详解
rust·元组·tuple·解构
ftpeak15 小时前
Tauri开发手记——1.开发环境
rust·tauri
草莓火锅16 小时前
用c++使输入的数字各个位上数字反转得到一个新数
开发语言·c++·算法
j_xxx404_16 小时前
C++ STL:阅读list源码|list类模拟|优化构造|优化const迭代器|优化迭代器模板|附源码
开发语言·c++
DreamNotOver16 小时前
批量转换论文正文引用为上标
开发语言·论文上标
散峰而望16 小时前
C/C++输入输出初级(一) (算法竞赛)
c语言·开发语言·c++·算法·github
fie888917 小时前
基于MATLAB的狼群算法实现
开发语言·算法·matlab
gihigo199817 小时前
MATLAB中生成混淆矩阵
开发语言·matlab·矩阵