首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具

Rust入门笔记

跟着rust官方的文章来一起学习rust
专栏成员
26
文章
2825
阅读量
14
订阅数
SpringBoot——报错总结
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. source : https://www.cnblogs.com/javawxid/p/10949511.html
思索
2025-04-17
890
【Rust学习】25_特征
特征(trait)定义了特定类型所具有的并且可以与其他类型共享的功能。我们可以使用特征以抽象的方式定义共享的行为。我们可以使用特征约束来指定泛型类型可以是任何具有特定行为的类型。
思索
2025-02-14
850
【Rust学习】24_泛型类型
我们将使用泛型来为函数签名、结构体等定义创建一个通用模板,这样它们就可以与多种不同的具体数据类型配合使用。
思索
2025-01-14
1020
【Rust学习】23_泛型类型、特征和生命周期
在编程中,处理概念重复是一个常见问题,不同的编程语言提供了不同的工具来解决这个问题。在 Rust 中,泛型就是这样一种工具,它允许我们编写与具体类型无关的代码,从而避免重复。
思索
2025-01-13
880
【Rust学习】22_panic!或者Result
那么,我们该如何判断何时应当使用 panic! 宏,何时应当返回 Result 类型呢?当代码触发 panic! 时,它意味着程序将无法恢复。你可以认为 panic! 适用于那些你认为无法或无需恢复的错误情况,即你已经确定这个错误是不可恢复的。而当你选择返回 Result 类型时,你实际上是在给调用者提供选择权。调用者可以根据具体情况决定是尝试某种恢复策略,还是认为这个 Err 值代表了一个不可恢复的错误,进而选择调用 panic!,将原本可能恢复的错误转变为不可恢复的错误。因此,在定义可能失败的函数时,默认返回 Result 类型是一个较好的选择。
思索
2025-01-08
960
【Rust学习】21_错误处理_Result
大多数错误没有严重到需要程序完全停止的程度。有时,当函数失败时,这是由于您可以轻松解释和响应的原因。例如,如果您尝试打开一个文件,但该操作失败,因为该文件不存在,您可能希望创建该文件,而不是终止进程。
思索
2025-01-06
1030
【Rust学习】20_错误处理_panic!
错误是软件中不可避免的事实,因此Rust提供了许多特性来处理出现问题的情况。在许多情况下,Rust要求你在代码编译之前发现错误的可能性并采取一些行动。这个要求通过确保你在将代码部署到生产环境之前发现并适当处理错误,使你的程序更加健壮!
思索
2024-12-02
890
【Rust学习】19_常见集合_HashMap
我们最后一个常见的集合是哈希映射。类型HashMap<K, V>使用哈希函数存储类型K的键到类型V的值的映射,这决定了它如何将这些键和值放入内存中。许多编程语言都支持这种数据结构,但它们通常使用不同的名称,例如哈希、映射、对象、哈希表、字典或关联数组等。
思索
2024-11-27
1060
【Rust学习】18_常见集合_String
新 Rust 开发者通常会因三个原因而在字符串上遇到困难:Rust 倾向于暴露可能的错误、字符串作为一种数据结构比许多程序员认为的要复杂,以及 UTF-8。这些因素结合在一起,可能会让你在从其他编程语言转换过来时觉得困难。
思索
2024-11-26
1110
【Rust学习】17_常见集合_向量
Rust的标准库包含许多非常有用的数据结构,称为集合。大多数其他数据类型代表一个特定的值,但集合可以包含多个值。与内置的数组和元组类型不同,这些集合指向的数据存储在堆上,这意味着数据的数量不需要在编译时知道,并且可以在程序运行时增长或缩小。每种集合都有不同的能力和成本,选择适合当前情况的集合是您会随着时间推移而发展的一项技能。在本章中,我们将讨论 Rust 程序中经常使用的三个集合:
思索
2024-11-22
1000
【Rust学习】16_抽离模块到独立的文件
到目前为止,本章中的所有示例都在一个文件中定义了多个模块。当模块变大时,您可能希望将它们的定义移动到单独的文件中,以便更轻松地浏览代码。
思索
2024-11-21
520
【Rust学习】15_使用路径引用模块树中的项目
来看一下 Rust 如何在模块树中找到一个项目的位置,我们使用路径的方式,就像在文件系统使用路径一样。如果我们想要调用一个函数,我们需要知道它的路径。
思索
2024-11-20
970
【Rust学习】14_定义模块来控制作用域与私有性
在本节,我们将讨论模块和其它一些关于模块系统的部分,如允许你命名的 路径(paths);用来将路径引入作用域的 use 关键字;以及变为公有的 pub 关键字。我们还将讨论 as 关键字、外部包和 glob 运算符。
思索
2024-11-19
1080
【Rust学习】13_package 和 crate
Rust 具有许多功能,允许您管理代码的组织,包括公开哪些内容、哪些内容是私有的以及程序中每个作用域中的名称。这些功能有时统称为模块系统,包括:
思索
2024-11-18
1010
【Rust学习】12_if let 简单控制流
在这一章我们将开始if let的学习,if let 语法允许您将 if 和 let 组合成一种不太冗长的方式,以处理与一个模式匹配的值,同时忽略其余模式,现在让我们开始学习吧。
思索
2024-11-13
1330
【Rust学习】11_match控制流
Rust 有一个非常强大的控制流结构,称为 match,它允许你将一个值与一系列模式进行比较,然后根据哪个模式匹配来执行代码。模式可由字面量、变量、通配符和许多其他内容构成;match 的强大之处在于模式的表达性,以及编译器检查,它确保了所有可能的情况都得到处理。
思索
2024-11-12
1020
【Rust学习】10_定义枚举
在这一章我们学习 枚举(enumerations),也被称作 enums。枚举允许你通过列举可能的 成员(variants) 来定义一个类型。首先,我们会定义并使用一个枚举来展示它是如何连同数据一起编码信息的。接下来,我们会探索一个特别有用的枚举,叫做 Option,它代表一个值要么是某个值要么什么都不是。然后会讲到在 match 表达式中用模式匹配,针对不同的枚举值编写相应要执行的代码。最后,我们将学习 if let 结构,另一个简洁方便处理代码中枚举的结构。
思索
2024-11-08
910
【Rust学习】09_方法语法
在这一章,我们将一起学习下方法语法,方法类似于函数:我们使用 fn 关键字和名称声明它们,它们可以有参数和返回值,并且它们包含一些代码,当从其他地方调用方法时,这些代码会运行。与函数不同,方法是在结构体(或枚举或 trait 对象,我们将会在后续来一起学习)的上下文中定义的,它们的第一个参数始终是 self,它表示调用该方法的结构体的实例。
思索
2024-10-10
960
【Rust学习】08_使用结构体代码示例
为了了解我们何时可能想要使用结构体,让我们编写一个计算长方形面积的程序。我们将从使用单个变量开始,然后重构程序,直到我们改用结构体。
思索
2024-09-14
1330
【Rust学习】07_结构体说明
struct或 structure是一种自定义数据类型,允许您命名和包装多个相关的值,从而形成一个有意义的组合。如果您熟悉面向对象的语言,那么struct就像对象中的数据属性。在本章中,我们将比较和对比元组与结构体,在您已经知道的基础上,来演示结构体是对数据进行分组的更好方法。
思索
2024-09-12
1360
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档