首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Rust学习
你叶不叶啊
创建于2023-12-11
订阅专栏
基于《Rust权威指南》学习Rust基础 & 进阶
等 20 人订阅
共15篇文章
创建于2023-12-11
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Rust第十六节 - 模式匹配
16 模式匹配 模式是Rust中一种用来匹配类型结构的特殊语法,它时而复杂,时而简单。 一个模式通常由以下组件组合而成: 字面量 解构的数组、枚举、结构体或元组 变量 通配符 占位符 我们会在这一节讨
Rust第十五节 - 无谓并发
15 无谓并发 讲无畏并发之前,我们首先来看看并发编程和并行编程的区别: 前者允许程序中的不同部分相互独立地运行,而后者则允许程序中的不同部分同时执行 但是从以往的经验来看,这类场景的编程往往是容易出
Rust第十四节-智能指针
14 智能指针 14.1 什么是指针?什么是智能指针? 指针: 指针(pointer)是一个通用概念,它指代那些包含内存地址的变量 常用的就是:引用 智能指针: 它和指针的的区别在于 指的是一些数据结
Rust第十三节-进一步认识Cargo & 如何发布Rust 包
13 进一步认识Cargo和crate.io 13.1 修改Cargo.toml默认配置 在我们平时执行cargo build或者cargo build --release时(第一个命令开发时使用,第
Rust第十二节-闭包与迭代器
12. 闭包与迭代器 12.1闭包 12.1.1 闭包的构成 闭包可以作为参数、返回值或者将其存储在一个变量中。 我们先来举个例子来讲讲闭包的构成: 这里我们声明了一个闭包get_sum,它和函数的声
Rust第十一节(实战) - 做一个简单的检索字符工具
11 编写检索字符串的工具 学完了,1-10节内容,我们接下来将他们结合起来,使用Rust做一个检测字符串的命令工具。 11.1 创建一个新项目 首先我们来创建一个新项目,使用cargo new mi
Rust第十节(下) - 生命周期
10.3 生命周期 Rust中的生命周期主要是用来解决悬垂引用的问题。首先我们来看看Rust中的悬垂引用问题怎么产生的。 10.3.1 悬垂引用 以下这个例子,我们在模块外声明了一个变量r,然后在模块
Rust第十节(上) - 泛型和特征
10 泛型和特征(trait) 10.1 泛型 10.1.1 什么是泛型 在讲泛型之前,我们先来抽象一个公用的求最大值的函数,例如: 通过上面的对于方法的一个抽象封装,我们可以同样来理解泛型。 泛型其
Rust第九节 - 错误处理
9 错误处理 在Rust中,我们的错误处理有两种,分为可恢复处理和不可恢复处理。 9.1 不可恢复错误处理 9.1.1 panic 我们首先举一个例子,这个例子会引发panic的报错,例如: 当我们出
Rust第八节 - 通用集合类型
8 通用集合类型 通用集合类型分为三种:动态数组,动态字符串,哈希映射,他们都会被存储在内存堆上。我们首先来看看动态数组。 8.1 动态数组 对于动态数组而言,我们只能存储相同数据类型的值。 首先我们
Rust 第七节 - 包和模块
7 包和模块 7.1 二进制单元包(项目)和库单元包 7.1.1 什么是二进制单元包 二进制单元包也就是我们通过cargo new project生成的项目,最外层存在一个Cargo.toml的文件作
Rust 第六节 - 枚举
6. 枚举 6.1 定义枚举 在rust中我们使用enum定义一个枚举,并且枚举使用大驼峰的命名方式,例如: 那我们应该如何使用枚举呢?我们可以直接在定义好的枚举名后面使用::就可以访问到枚举内的数据
Rust 第五节 - 结构体
5 结构体 5.1 声明一个结构体 在rust中,当我们需要声明一个结构体,需要在使用struct这个关键字,例如: 结构体还可以这样来简化一个初始化的传参,例如: 当我们想接受另外一个实例的数据,如
Rust 第四节 - 认识所有权
4 认识所有权 4.1 所有权 当我们对一个没有实现可Copy特征的数据进行移动时,此时就发生了所有权的转移,例如: 还有什么情况会发生所有权的移动呢?当我们向函数传参时,也会发生,传参的过程就相当于
Rust 第三节 - 通用编程概念
3 通用编程概念 3.1 变量 在rust中我们声明一个变量使用let,例如: rust变量命名规范使用蛇形命名法, 如snake_name,例如: 当我们声明了一个字符串变量,但是我想不改变变量名的