Anonymous 发布于 收录于 学习笔记 使用线程同时运行代码多线程会遇到的问题: 竞态条件 死锁 只在特定条件下发生,难以复现和修复的bug rust 标准库使用1:1实现线程。一个语言级别的线程
Anonymous 发布于 收录于 学习笔记 智能指针起源于C++,并存在于其他语言。Rust 定义了多种不同的智能指针,并提供了多于引用的额外功能。 普通引用和智能指针:引用是一类只借用数
Anonymous 发布于 收录于 学习笔记 闭包:可以捕获环境的匿名函数 使用 || 方法 标记 || 中间可以填写参数 闭包的case1: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Anonymous 发布于 收录于 学习笔记 如何编写测试 需要标记注解 #[test] assert_eq 宏 和 assert_ne 宏 测试相等 assert 宏自定义断言 should_panic 注解预测panic 还可以通过Result<T, E> 方式测试 控制测试如何运行 默
Anonymous 发布于 收录于 学习笔记 范型数据类型 一般使用T作为类型参数名称 适用于结构体、枚举、函数等 支持多个类型 可以限定方法实现 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 fn largest<T>(list: &[T]) -> &T { let mut
Anonymous 发布于 收录于 学习笔记 两种类型的错误,可恢复的和不可恢复的。 可恢复的用Result<T,E>处理,不可恢复的使用panic!宏处理 处理不可恢复的错误 panic