《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

相关推荐
Wang's Blog1 小时前
Java框架 SpringCloud 快速入门: 服务拆分之服务远程调用
java·开发语言·spring cloud
努力努力再努力wz1 小时前
【CUDA入门系列】CUDA编程实战:设备选择、显存管理、Kernel、Stream 与 Event 全流程梳理
开发语言·c++
杨丰玮4181 小时前
C语言核心语法
java·c语言·开发语言·学习方法
ttwuai1 小时前
Go开源后台管理系统推荐:README、源码和License应该怎么验
开发语言·golang·开源
Java后端的Ai之路1 小时前
Python 进阶探索30 - Python中的装饰器
开发语言·人工智能·python·文件处理·装饰器模式
沫璃染墨1 小时前
《从零入门Linux系统篇(五十八):线程篇·十一——线程安全与死锁详解:从可重入到多锁管理》
linux·服务器·开发语言·c++·驱动开发·安全·架构
黑妹天下第一乖2 小时前
第 05 讲:阿加犀 AidCV 图像处理加速与 OpenCV 一致开发实战
开发语言·图像处理·人工智能·嵌入式硬件·数码相机·opencv·计算机视觉
言乐62 小时前
Python基于关键词分拣快递(适用于电商与货运代理等)
开发语言·python·django·virtualenv·pygame
一条破秋裤2 小时前
01_字符设备基本概念_从分类到LED控制链路
开发语言·php