rust

DongLi012 天前
rust
rustlings 学习笔记 -- exercises/05_vecs
番茄灭世神3 天前
rust·编程语言
Rust学习笔记第2篇代码示例:首先我们声明了要使用标准库里面的io模块;然后第一次定义了一个变量guess,我们要注意Rust当中的变量默认都是immutable(一成不变)。如果我们需要声明一个变量,那么就需要使用mut关键字。
shimly1234563 天前
rust
(done) 速通 rustlings(20) 错误处理1 --- 不涉及Traits如下是示例代码:RUST,一个函数返回一个 Result 后,并赋值给一个变量时,中的 “?” 表示:如果 parse 出现错误,提前 return Err(e) 给 caller。
shimly1234563 天前
rust
(done) 速通 rustlings(19) Option在 Rust 里,当某个操作可能会有值也可能没有值时,我们不会用 null,而是使用 Option 枚举:
@atweiwei3 天前
开发语言·数据结构·后端·rust·内存·所有权
rust所有权机制详解Rust作为一门系统编程语言,以其独特的所有权机制在编程语言领域独树一帜。所有权不仅是Rust的核心特性,更是其保证内存安全的关键所在。本文将深入探讨Rust的所有权机制,通过丰富的实例帮助读者理解这一重要概念。
shimly1234563 天前
rust
(done) 速通 rustlings(24) 错误处理2 --- 涉及TraitsRUST 中的 Error 实际上是一个特性,所有错误处理,在发生错误时都会抛出 Error。事实上,你可以自己定义任何类型的错误,只要它们实现了 Error 特性,就可以被 Result <…, …> 接收。
shimly1234563 天前
rust
(done) 速通 rustlings(23) 特性 Traits特性 Traits 可以为已存在的类型/模块/结构体 添加方法,如下:上面的代码定义了一个特性叫 AppendBar。随后为类型 String 实现了这个特性(往字符串末尾添加 “Bar”)。
shimly1234563 天前
rust
(done) 速通 rustlings(17) 哈希表如下代码,是哈希表的导入、创建、插入:RUST 哈希表有些很方便的内置函数:比如 basket.entry(fruit).or_insert(5); 表示 “若表中不存在 fruit,则插入该 key,value 设置为 5”
shimly1234563 天前
rust
(done) 速通 rustlings(15) 字符串String 类型会拥有字符串的所有权 &str 类型属于不可变借用,不会拥有字符串的所有权在 String 类型前面加上 & 即可得到 “不可变借用”,传参时要保持类型一致,编译器不会自动把 String 转 &str
shimly1234563 天前
rust
(done) 速通 rustlings(22) 泛型RUST 中最典型的利用了泛型的例子就是 Vec,它可以装任何数据类型,如下:以下是我们自己实现泛型的一个例子:
yezipi耶不耶3 天前
websocket·rust
我在 RTMate 里使用的高并发连接管理利器: DashMapRTMate 是我目前使用 Rust 语言自研的一个专注于提供 Websocket 连接服务的项目,用户可以免搭建Websocket 服务器,直接使用RTMate 就可以将自己的服务端和客户端进行Websocket 消息通信了。项目中有一个至关重要的点,那就是如何做好连接的管理,从连接的创建到销毁,从消息生产者到消息消费者的消息通信。Websocket 连接如何管理,对项目能否高效运行十分关键。
初恋叫萱萱3 天前
运维·人工智能·rust
深入解析 Rust + LLM 开发:手把手教你写一个 AI 运维助手本文详细阐述了利用 Rust 系统级编程语言结合蓝耘(Lanyun)MAAS 平台的大语言模型能力,开发一款智能命令行助手(CLI)的全过程。文章从 Linux 服务器的基础环境构建入手,深入剖析了 Rust 异步运行时、HTTP 客户端封装、命令行参数解析及终端交互界面的实现原理。特别针对开发过程中涉及的 OpenSSL 动态链接库依赖问题、Rust 类型系统的 Trait 约束问题进行了深度排查与原理解析。通过本项目,旨在展示如何将自然语言处理(NLP)能力引入传统 Shell 环境,实现自然语言到
shimly1234564 天前
rust
(done) 速通 rustlings(9) 分支跳转RUST 中的分支跳转-条件判断不需要加括号RUST 作为一种表达式导向的语言,if-else 块作为一个表达式,可以直接赋值给变量:
shimly1234564 天前
rust
(done) 速通 rustlings(4) 变量声明rust 声明变量使用 let 关键字。 rust 会自动推导变量类型,但也可以通过 : i32 明确变量类型
shimly1234564 天前
rust
(done) 速通 rustlings(11) 向量vector及其操作初始化 vector 内部数据的方法如下:对 input 数组进行迭代,每个元素乘以2然后推入 output 向量
shimly1234564 天前
rust
(done) 速通 rustlings(3) intro1 println!()这个 RUST 语句,字符串左右的 # 是啥意思?r 是啥意思?回答:r 是原始字符串前缀(raw string prefix)。它告诉 Rust 编译器:这个字符串中的所有字符都按原样解释,不会对转义字符(如 \n、\t、" 等)进行特殊处理。
shimly1234564 天前
rust
(done) 速通 rustlings(12) 所有权如下代码,第25行会在编译阶段报错:原因是:在 Rust 中,Vec 是一个拥有堆上数据的类型。 当你把它当作参数传给 fill_vec(vec0) 时,所有权从 vec0 转移到函数的形参里:
shimly1234564 天前
rust
(done) 速通 rustlings(7) 全局变量/常量RUST 中,let 不能用于声明全局变量 全局常量必须显示声明类型另一种全局 “常量” 声明方式是使用 static,默认只读。 若使用 static mut,则是可变全局变量,由于可变全局变量容易造成别名/并发问题,必须使用 unsafe 块访问。
敲敲了个代码4 天前
开发语言·前端·javascript·后端·rust
构建工具的第三次革命:从 Rollup 到 Rust Bundler,我是如何设计 robuild 的在开始正文之前,我想先回答一个无法回避的问题:在 Webpack、Rollup、esbuild、Vite 已经如此成熟的今天,为什么还要设计一个新的构建工具?
lpfasd1234 天前
rust·tauri·update
Tauri 中实现自更新(Auto Update)在 Tauri 中实现自更新(Auto Update)主要依赖于官方的 updater 插件。该机制通过数字签名确保更新包的安全性,防止篡改。