- 博客(7)
- 资源 (3)
- 收藏
- 关注
原创 Rust代码审查清单
安全性:所有权、生命周期、unsafe使用健壮性:错误处理、边界条件性能:避免不必要的分配和克隆可维护性:清晰的API、充分的文档并发正确性:无数据竞争、无死锁结合自动化工具(Clippy、rustfmt)和人工审查,可以有效提升Rust代码质量!
2025-10-30 08:15:07
409
原创 Rust Vec的内存布局与扩容策略:从源码到实践
Vec是Rust标准库中最常用的动态数组类型,其高效的内存管理和智能的扩容策略是其性能的关键。len: usize, // 长度(实际存储的元素数)cap: usize, // 容量(已分配的元素数)ptr: *mut T, // 指向堆内存的指针。// 栈上的Vec结构(24字节,64位系统)// 长度: 17, 容量: 16 -> 32。// 长度: 9, 容量: 8 -> 16。// 长度: 1, 容量: 0 -> 4。// 长度: 5, 容量: 4 -> 8。
2025-10-29 08:36:17
1145
原创 Rust引用模式与值模式的区别:所有权视角的深度解析
(“公司: {}, 员工数: {}”, name, employees.len());(“公司: {}, 员工数: {}”, name, employees.len());(“{}”, s), // s获得所有权,text被移动。(“{}”, n), // n是number的副本。(“用户: {}, 年龄: {}”, name, age);(“用户: {}, 年龄: {}”, name, age);(“用户: {}, 年龄: {}”, name, age);(“长度: {}”, s.len());
2025-10-29 08:32:48
1200
原创 Rust解构技术完全指南:元组、结构体与枚举的深度实践
解构(Destructuring)是Rust模式匹配系统的核心能力,它允许我们优雅地分解复合数据类型,提取所需的值。(“两元素: {}, {}”, first, second),{}”, first, last),(“首: {}, 中间: {:?}, 尾: {}”, first, middle, last);(“单元素: {}”, single),(“左键点击 ({}, {})”, x, y);(“非活跃用户: {}”, username)(“值为: {}”, value);
2025-10-29 08:28:42
675
原创 Rust生命周期在异步编程中的挑战:深度解析与实战
Rust的生命周期系统是其内存安全的基石,但在异步编程场景下,生命周期的复杂性呈指数级增长。核心原则:在异步上下文中,优先选择拥有所有权的类型(String、Vec、Arc)而非引用,这能大幅简化生命周期管理。当必须使用引用时,确保引用的生命周期涵盖所有可能的暂停点。// query的生命周期问题。query: Option<Query<'a>>, // 自引用!// 手动实现Future时必须考虑Pin。// ✅ 解决方案:使用拥有所有权的类型。// Future内部实际上是这样的。
2025-10-29 08:26:03
1314
原创 Rust Match表达式完整语法详解:从基础到高级
(“颜色: RGB({}, {}, {})”, r, g, b),(“移动到({}, {})”, x, y),} => format!(“忽略z: ({}, {})”, x, y),Point3D { x, y: 0, z: 0 } => format!(“X轴上: {}”, x),(“服务器错误 {}: {}”, code, message))Point3D { x: 0, y: 0, z: 0 } => “三维原点”,
2025-10-29 08:20:17
670
SaveAsPDFandXPS与使用说明.rar
2020-07-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅