首页
个人开发
工作相关
搜索
登录
搜索
colo
欲买桂花同载酒
累计撰写
1823
篇文章
累计收到
0
条评论
首页
栏目
首页
个人开发
工作相关
Rust基础
2025-12-12
解释Rust中整数和字符串所有权的区别
以下两段代码的区别在于:整数类型实现了Copy trait,赋值时自动复制值String类型未实现Copy,赋值时所有权发生移动因此:代码段A:s1在赋值后失效,导致编译错误代码段B:x1在赋值后仍有效,可正常打印
2025年-12月-12日
4 阅读
0 评论
Rust基础
2025-12-12
实现安全的字符串分割函数
实现要点:使用 find() 定位分隔符索引处理未找到分隔符的错误情况(返回 Result)利用字符串切片避免不必要的拷贝正确处理 UTF-8 字符边界返回新创建的 String 保证内存安全
2025年-12月-12日
4 阅读
0 评论
Rust基础
2025-12-12
设计一个线程安全的泛型缓存结构,支持并发读写、缓存过期和惰性更新
实现线程安全缓存的核心要点:使用 RwLock 和 Arc 实现并发访问控制通过泛型和 Fn trait 支持任意计算逻辑结合 std::time::Instant 记录插入时间实现过期机制惰性更新策略:过期时重新计算并更新缓存错误处理:正确处理锁争用和计算失败场景
2025年-12月-12日
4 阅读
0 评论
Rust基础
2025-12-12
理解Rust中的变量遮蔽(Shadowing)
该代码展示了Rust的变量遮蔽特性:外层x初始值为5内层作用域中let x = ...创建新变量遮蔽外层x内层修改不影响外层变量值离开内层作用域后,外层x恢复可见因此最后打印的是外层未被修改的x(值为10)。
2025年-12月-12日
4 阅读
0 评论
Rust基础
2025-12-11
Rust 变量遮蔽与可变性的区别
关键区别:可变性 (mut):修改同一内存位置的值变量遮蔽 (Shadowing):创建同名新变量,原变量被隐藏遮蔽允许改变类型,可变性要求类型一致代码示例:let x = 5; // 不可变let mut y = 3; // 可变let x = "hello"; // 遮蔽(类型改变)y = 10; // 直接修改值
2025年-12月-11日
4 阅读
0 评论
Rust基础
2025-12-9
Rust 变量可变性修复
以下代码存在编译错误:let x = 5; x = 6;修复要点:Rust 变量默认不可变(immutable)需要添加 mut 关键字声明可变变量正确修复方式:let mut x = 5;
2025年-12月-9日
4 阅读
0 评论
Rust基础
2025-12-8
理解Rust中的所有权和借用
Rust的所有权系统通过三条核心规则保证内存安全:每个值有且只有一个所有者值在所有者离开作用域时自动释放可通过引用(&T)借用值,但同一作用域内:允许存在多个不可变引用或仅一个可变引用(&mut T)不可同时存在可变和不可变引用
2025年-12月-8日
5 阅读
0 评论
Rust基础