《Rust程序设计》学习笔记一

===^^===

《榴芒客服系统》是我们工作室开发的在线客服系统,欢迎下载试用:

《榴芒客服系统》https://blog.csdn.net/look4liming/article/details/164755808

Rust包,无论是库还是可执行文件,都叫作crate,字面意思是"板条箱"。相对于包,crate更强调自己的硬边界,有着更高的安全性。

马车(Cargo)上拉着一些板条箱(crate)。

Cargo.toml文件列出所要使用的包:

package

name = "actix-gcd"

version = "0.1.0"

edition= "2021"

dependencies

actix-web = "1.0.8"

serde = {version = "1.0", features = "derive"}

Cargo.toml中dependencies部分的每一行都给出了crates.io上的crate名称,以及要使用的那个crate的版本。

serde crate提供了非常简洁的方式来处理来自WEB表单的数据,根据serde的文档,只有选择了此crate的derve特性时它才可用,因此在Cargo.toml文件中请求了它。

只需要指定要直接用到的那些crate即可,cargo会负责把它们自身依赖的所有其它crate带进来。

在源代码中使用serde的反序列化功能:

use serde::Deserilize;

use声明全都放在源代码文件的顶部是良好的编程习惯,但Rust并不强制要求你这样,它允许你把use声明放到有效的其它位置。

下面这个结构体,用于表示期望从表单中获得的值:

#derive(Deserilize)

Struct GcdParameters {

n: u64,

m: u64,

}

Rust中用来确保内存安全的那些规则,也同样可以让线程在共享内存的时候避免数据竞争。

===^^===

《榴芒客服系统》是我们工作室开发的在线客服系统,欢迎下载试用:

《榴芒客服系统》https://blog.csdn.net/look4liming/article/details/164755808

相关推荐
2601_966949652 小时前
如何根据研究的起止时间截取分钟级行情?Python 实战与 QuantDash 数据处理指南
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash
晨曦中的暮雨4 小时前
限流算法——固定窗口、滑动窗口、漏桶、令牌桶
java·开发语言·算法
喵了几个咪5 小时前
GoWind CMS 拆解:在 Go 里给 TipTap 搭一套 Yjs 协同后端
开发语言·后端·golang
程序员清风5 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
2601_962885727 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
Wang's Blog7 小时前
Java 项目实战: 交友项目 - 圈子功能实现:总结
java·开发语言·交友
下一站春风里8 小时前
位运算完整学习笔记:按位与(&)+ 异或(^)
开发语言·c++·算法
天外飞雨道沧桑9 小时前
我在浏览器里练了一个 792 参数的大模型,它学会了补全 JavaScript
开发语言·javascript·ai·ecmascript·ai编程
hhhjhl9 小时前
Yup 跨端三方库仓颉适配全流程
java·开发语言
运维行者_9 小时前
网络监控工具怎么选?从设备监控到智能运维的能力清单
运维·服务器·开发语言·网络·人工智能·支持向量机·php