rust

2301_796512525 分钟前
java·学习·rust
Rust编程学习 - 为什么说Cow 代表的是Copy-On-Write, 即“写时复制技术”,它是一种高效的 资源管理手段大家需要注意的是,这个self的类型是&Self,不是&mutSelf。但我们同时还需要使用这个共享引用self来修改引用计数的值。
2301_7951672040 分钟前
开发语言·算法·rust
玩转Rust高级应用 如何进行理解Refutability(可反驳性): 模式是否会匹配失效模式出现在 Rust 的很多地方。你已经在不经意间使用了很多模式!本节将介绍所有模式有效的位置。如第六章所讨论的,一个模式常用的位置是 match 表达式的分支。在形式上 match 表达式由 match 关键字、用于匹配的值和一个或多个分支构成,这些分支包含一个模式和在值匹配分支的模式时运行的表达式,如下所示:
逻极1 小时前
开发语言·后端·rust
Rust数据类型(下):复合类型详解在上一篇文章中,我们深入探索了Rust的标量类型——整数、浮点数、布尔值和字符。这些类型是构成程序数据的原子单位,每一个都代表一个单一的值。然而,在现实世界的编程任务中,我们很少只处理孤立的、单一的值。我们更常需要将多个值组合在一起,形成一个有意义的、结构化的数据单元。例如,一个二维坐标点由x和y两个浮点数组成;一个日期由年、月、日三个整数组成;一个学生的记录可能包含姓名(字符串)、学号(整数)和成绩(浮点数)。
星释1 小时前
开发语言·后端·rust
Rust 练习册 12:所有权系统所有权系统是 Rust 最核心和最具特色的特性之一,它在不使用垃圾回收器的情况下保证了内存安全。通过所有权系统,Rust 能够在编译时防止悬垂指针、数据竞争和其他内存安全问题。今天我们就来深入学习 Rust 的所有权系统。
星释1 小时前
java·网络·rust
Rust 练习册 16:Trait 作为返回类型在 Rust 中,使用 trait 作为函数返回类型是一个常见但容易混淆的话题。理解如何正确使用 trait 作为返回类型对于编写灵活且高效的 Rust 代码至关重要。今天我们就来深入学习 trait 作为返回类型的机制和最佳实践。
2301_796512522 小时前
java·学习·rust
Rust编程学习 - 如何理解Rust 语言提供了所有权、默认move 语义、借用、生命周期、内部可变性注意:&*两个操作符连写跟分开写是不同的含义。以下两种写法是不同的:fn joint() 是可以直接编译通过的,而fn separate()是不能编译通过的。因 为编译器很聪明,它看到&*这两个操作连在一起的时候,会直接把&s 表达式理解为 s.deref(), 这时候p 只是s 的一个借用而已。而如果把这两个操作分开写,会先执行s 把内部的数据move 出来,再对这个临时变量取引用,这时候s 已经被移走了,生命周期已 经结束。
tianyuanwo2 小时前
开发语言·python·rust
Rust开发完全指南:从入门到与Python高效融合在当今的软件开发领域,Rust正以惊人的速度崛起。它不仅连续多年在Stack Overflow开发者调查中被评为"最受喜爱的编程语言",还被广泛应用于WebAssembly、系统编程、区块链等前沿领域。更重要的是,Rust与Python的完美结合为开发者提供了"鱼与熊掌兼得"的解决方案:Python的开发效率与Rust的运行性能。
2401_860494702 小时前
开发语言·rust·制造
Rust语言高级技巧 - RefCell 是另外一个提供了内部可变性的类型,Cell 类型没办法制造出直接指向内部数据的指针,为什么RefCell可以呢?按照前面的理论,如果我们有共享引用指向一个对象,那么这个对象就不会被更改了。 因为在共享引用存在的期间,不能有可变引用同时指向它,因此它一定是不可变的。其实在 Rust 中,这种想法是不准确的。下面给出一个示例:
国服第二切图仔2 小时前
rust·密码学·哈希算法
Rust开发实战之密码学基础——哈希计算与对称加密实战本文将带你深入Rust中的密码学实践,聚焦于哈希函数(如SHA-256)和对称加密算法(如AES)的实际应用。通过使用成熟的第三方库ring和hex,我们将实现数据完整性校验、密码存储安全以及加密通信的基本能力。适合已掌握Rust基础语法并希望拓展系统安全编程技能的开发者。
2301_796512523 小时前
学习·算法·rust
Rust编程学习 - 内存分配机制,如何动态大小类型和 `Sized` traitRust 的类型系统有一些我们曾经提到但尚未讨论过的特性。首先我们将从一般意义上讨论 newtype 并探讨它们作为类型为何有用。接着会转向类型别名(type aliases),一个类似于 newtype 但有着稍微不同的语义的功能。我们还会讨论 ! 类型和动态大小类型。
林太白7 小时前
前端·后端·rust
rust17-部门管理模块部门管理这部分跟我们的菜单部分有些像,也应该是树级的显示,这里我们处理一下。不过我们数据上直接显示列表,然后折叠部分交给前端页面显示的时候渲染即可。
CheungChunChiu7 小时前
开发语言·flutter·rust
从 Rust 到 Flutter:嵌入式图形与构建工具全景指南在构建如 RustDesk 这类跨平台远程桌面工具时,开发者往往会接触到一整套现代编程语言、构建工具、系统依赖和图形栈。本文将系统梳理这些组件的作用、关系和安装方式,特别适用于在 ARM64 架构(如 RK3588)上进行开发的场景。
2301_795167209 小时前
算法·安全·rust
Rust 在内存安全方面的设计方案的核心思想是“共享不可变,可变不共享”Rust 在内存安全方面的设计方案的核心思想是“共享不可变,可变不共享”。在可变性控制方面,如果说, C 语言和函数式编程语言分属一个天平的两端,那么Rust 就处于这个天平的中央。C 语言的思想是:尽量不对程序员做限制,尽量接近机器底层,类 型安全、可变性、共享性都由程序员自由掌控,语言本身不提供太多的限制和规定。安全与 否,也完全取决于程序员。而函数式编程的思想是:尽量使用不可变绑定,在可变性上有严 格限制,在共享性方面没有限制。函数式编程特别强调无副作用的函数以及不可变类型,以 此来达到提高安全性的
2301_796512529 小时前
开发语言·学习·rust
Rust编程学习 - 自动解引用的用处,如何进行“解引用”(Deref) 是“取引用”(Ref) 的反操作那么,这个bug 该如何修正呢?为什么&long类型的指针可以向&short类型赋值, 而 &Cell 类型的变量不能向&Cell 类型的变量赋值?因为对于具有内 部可变性特点的Cell 类型而言,它里面本来是要保存&long型指针的.
百锦再11 小时前
android·java·开发语言·python·ai·rust·go
第8章 模块系统随着Rust项目的不断增长,良好的代码组织变得至关重要。Rust提供了一套强大的模块系统,允许开发者将代码分割到不同的模块和文件中,同时控制代码的可见性和组织结构。本章将深入探讨Rust的模块系统,包括包、crate、模块的概念,路径与作用域的使用,use关键字与重导出的技巧,以及文件组织与模块拆分的最佳实践。
几颗流星11 小时前
后端·rust
Rust 常用语法速记 - 迭代器Rust 的迭代器(Iterator)是一种强大而高效的数据处理工具,它允许以声明式的方式遍历和操作集合中的元素。迭代器是 Rust 零成本抽象的典范,意味着它在提供高级抽象的同时几乎不产生运行时开销。
肖祥13 小时前
rust
Rust入门Rust 是一门系统编程语言,专注于安全,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。Rust 在语法上和 C++ 类似,设计者想要在保证性能的同时提供更好的内存安全。该语言由 Mozilla 员工 Graydon Hoare 于 2006 年作为私人项目启动,2009 年获得 Mozilla 赞助,首个有版本号的编译器于 2012 年 1 月发布。
林太白14 小时前
后端·rust
rust16-职位管理模块👉路由入口引入申明接下来我们完成职位模块,在完成功能之前我们需要先添加模块入口,这样rust才能认识到是哪个模块
国服第二切图仔14 小时前
开发语言·rust·游戏引擎
Rust开发实战之简单游戏开发(piston游戏引擎)本文将带你使用 Rust 的 Piston 游戏引擎从零开始构建一个简单的 2D 图形化小游戏,涵盖窗口创建、事件处理、图形渲染和用户交互等核心概念。通过本案例,你将掌握如何在 Rust 中进行基础的游戏开发,并理解异步事件循环与图形绘制的基本流程。
史不了1 天前
开发语言·后端·rust
静态交叉编译rust程序最近,我尝试在一部 aarch64 架构、运行着 Ubuntu 18.04 系统的设备上安装和使用 Helix 编辑器。Ubuntu 18.04 是一个相对较老的发行版,其 glibc 版本(2.27)也比较低。