- 博客(5)
- 收藏
- 关注
原创 Rust基础 错误处理
文章目录错误处理使用`panic!`宏使用`Result错误处理 Rust中将错误分为两类:可恢复的错误和不可恢复的错误。当遇见不可恢复的错误时,直接使用panic!宏使程序停止运行,当遇见可恢复的错误时,可以先使用枚举类型Result<T, E>封装错误,然后利用match {}对错误进行处理。在其它语言,比如Python中,所有错误都是可恢复的错误,使用try except对错误进行处理。 使用panic!宏 panic!的使用方法就和println!一样,如下: fn main() {
2021-10-19 23:28:24
1815
原创 Rust基础 常见容器
文章目录常见容器向量`Vec`创建向量添加元素读取元素向量元素的引用和向量的引用删除向量使用迭代器访问元素字符串`String`创建字符串更新字符串读取字符串中的元素字符串切片哈希表`HashMap常见容器 这部分主要介绍Rust中的向量Vec<T>、字符串和哈希表。 向量Vec<T> 向量和数组的最大区别在于,数组的长度必须在编译时确定,而且之后长度不能更改,所以数组使用的是栈内存,而向量的长度是动态的,可以在运行时增加或减少,因此使用的是堆内存。 创建向量 fn main() {
2021-10-17 11:52:14
814
原创 Rust基础 生命周期
文章目录生命周期阻止悬垂引用生命周期标注语法在函数签名中使用生命周期在结构体中使用生命周期在方法中使用生命周期简化函数/方法签名静态生命周期`'static` 生命周期 在Rust中,每个引用都有生命周期,在引用的生命周期内,它指向的对象必然是存在的。在大部分时候,编译器可以自动对引用的生命周期进行推断,保证引用是合法的,但在有些时候,编译器不能自动推断出引用的生命周期,这时就需要我们显式地设定引用的生命周期。 在Rust中,变量的生命周期是指它被创建到被销毁的这个区间。要保证引用指向的对象存在,则引用的生
2021-10-16 11:20:16
460
原创 Rust基础 特性
文章目录特性定义特性实现特性默认实现使用特性作为参数类型特性绑定语法满足多特性的类型关键字`where`仅为满足某些条件的类型实现方法 特性 在Rust中,特性由方法签名构成。如果某类型实现了某特性所定义的全部方法,则称该类型具有此特性。在定义函数或者方法的时候,可以将参数的类型设置为一个特性,那么,传递参数的时候,可以传递所有具有此特性的类型的变量,在这一点上,类似于Go中的接口。 定义特性 trait Summary { fn summarize(&self) -> String;
2021-10-16 11:11:31
553
原创 Rust基础 泛型
文章目录泛型使用 泛型 泛型的目的在于减少重复代码,提高程序的可读性。 使用 在函数定义中使用泛型: fn identity<T>(x: T) -> T { x } 在结构体定义中使用泛型: struct Point<T, U> { x: T, y: U, } 在枚举类型定义中使用泛型: enum Result<T, E> { Ok(T), Err(E), } 比较复杂的是在方法定义中使用泛型,如下: struct Po
2021-10-15 22:00:13
278
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人