• 二十一、Rust 反射 获取类型-最后总结

    时间:2024-04-06 16:12:38

      Any Trait 并非常规意义上的 Reflection,而最多是编译期反射、且只启用了 “类型检查” 和 “类型转换”,并不检查结构的任意内容。   Any 符合零成本抽象,因为Rust只会针对调用该函数的相关类型生成代码,并且返回的是编译器内部的类型ID,没有额外开销;甚至可以直接使用 ...

  • 【Rust】语言特点介绍

    时间:2024-04-06 13:36:10

    Rust 教程 Rust 语言是一种高效、可靠的通用高级语言。其高效不仅限于开发效率,它的执行效率也是令人称赞的,是一种少有的兼顾开发效率和执行效率的语言。 Rust 语言由 Mozilla 开发,最早发布于 2014 年 9 月。Rust 的编译器是在 MIT License 和 Apache ...

  • 十九、Rust Tcp Rpc 示例-定义服务

    时间:2024-04-05 09:34:33

    tarpc/src/lib.rs#[tarpc::service]pub trait Hello { async fn hello(name: String) -> String;} ...

  • RUST语言基本数据类型认识

    时间:2024-04-04 21:55:48

    1.RUST的基本数据类型参考: 2.使用RUST数据类型声明变量并赋值: let a:i8=1;//8位有符号整数 let a1:u8=2;//8位无符号整数 let b:i16=1;//16位有符号整数 let b1:u16=2;//16位无符号整数 let c...

  • RUST语言函数的定义与调用

    时间:2024-04-04 10:20:55

    1.定义函数 定义一个RUST函数使用fn关键字 函数定义语法: fn  函数名(参数名:参数类型,参数名:参数类型)  -> 返回类型 {          //函数体 } 定义一个没有参数,没有返回类型的参数  fn add() { println!("调用了add函数!");} 定...

  • Rust编程(五)终章:查漏补缺-闭包 & 迭代器

    时间:2024-04-03 20:01:59

    闭包(Closure)通常是指词法闭包,是一个持有外部环境变量的函数。外部环境是指闭包定义时所在的词法作用域。外部环境变量,在函数式编程范式中也被称为自由变量,是指并不是在闭包内定义的变量。将自由变量和自身绑定的函数就是闭包。 闭包的两大特性: 延迟执行。返回的闭包只有在需要调用的时候才会执行。捕...

  • rust元编程

    时间:2024-04-02 12:48:28

    目录 一,宏的分类 二,声明宏 1,声明宏的匹配语法 2,匹配范畴 3,声明宏的调用 4,多入参匹配 5,常见声明宏 6,声明宏的卫生性 三,函数宏 四,属性宏 五,派生宏 一,宏的分类 rust的宏分为声明宏、过程宏。 过程宏又分为函数宏、属性宏、派生宏 二,声明宏 1,声明宏的匹配语法 声明宏...

  • Rust 实现日志记录功能

    时间:2024-04-01 17:07:18

    目录log 日志库标准简单示例使用方法库的开发者应用开发者日志库开发者使用 log4rs添加依赖配置文件运行项目参考文章log 日志库标准log 是 Rust 的日志门面库,由官方积极维护可以放心使用。它是Rust的日志门面,相应的日志 API 已成为事实上的标准被其它日志框架所使用,有了日志门面开...

  • rustup update 升级rust时异常 directory does not exist: ‘share/doc/rust/html‘ 解决方法

    时间:2024-03-31 17:12:40

    最近把原来的老版本rust升级为最新版本, 转悠了半天给我报一个 目录不存在异常而升级失败。 异常信息: info: rolling back changes error: failure removing component 'rust-docs-x86_64-apple-darwin', dir...

  • Rust 1.9发布,提高了速度和错误处理

    时间:2024-03-31 14:40:30

    欢呼吧!Rust用户!在Rust 1.8的新build系统首次亮相一个月之后,1.9版本便横空出世。这个版本中,编译速度大大提升,跨平台的工具增强,语言自身加强了对错误的处理。最新的版本为开发者们提供了最实际的便利。如博客中所介绍,1.9版本加强了std:panic模块的稳定性。如果某个线程引起了R...

  • mac安装rust开发环境,使用brew安装和全局配置

    时间:2024-03-29 22:12:46

    mac下使用brew可以一键安装环境: brew install rustup 安装完成执行: rustup-init 按照提示配置即可: 出现: 想要全局生效: echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bash_prof...

  • Rust常用库之序列化和反序列化库serde(使用 Serde 处理json)

    时间:2024-03-29 17:36:54

    文章目录 Rust常用库之序列化和反序列化库serde(使用 Serde 处理json)什么是serde库设计使用 Serde 处理jsonr# 的使用参考 Rust常用库之序列化和反序列化库serde(使用 Serde 处理json) 什么是serde库 官网:https://serde...

  • 【Rust】——panic!和不可恢复的错误

    时间:2024-03-28 21:00:22

            让我们来看看另一个因为我们代码中的 bug 引起的别的库中 panic! 的例子,而不是直接的宏调用。 fn main() { let v = vec![1, 2, 3]; v[99];}         这里尝试访问 vector 的第一百个元素(这里的索引是 99...

  • Rust 的 Vec 排序方法汇总

    时间:2024-03-27 19:34:24

    在 Rust 中,Vec 类型的排序可以通过使用 sort 方法来实现。sort 方法是 Vec 的一个成员方法,它会对向量中的元素进行就地排序(即不返回新的排序后的向量,而是直接修改原始向量)。此外,sort_by 和 sort_by_key 方法允许你提供自定义的排序逻辑。 以下是一些示例: 使...

  • 为什么Rust语言不支持三元表达式?

    时间:2024-03-25 14:49:48

    在Java, PHP语言中有一个我们常用的三元表达式写法,  而在Rust语言中这种三元表达式写法是不被支持的, 为什么呢?           最直接的就是 在Rust语言中可以将 if 条件表达式的值可以直接赋值给变量, 而JAVA,PHP, JS等支持三元表达式的语言是不行的。  Rust类“...

  • Rust 编程环境搭建(IDEA 插件)

    时间:2024-03-22 08:21:41

    Rust 编程环境搭建IDEA 插件安装rustup 下载安装测试 Rust 编程环境CargoIDEA 插件安装IDEA 版本 2020.2.1。在 IDEA 中以此选择 File > Settings > Plugins,搜索 Rust,选择安装 Rust 插件,IDEA 会同时安装...

  • Rust的所有权和生命周期机制的本质-堆和栈

    时间:2024-03-20 13:40:54

    栈和堆是计算机内存中两种不同的存储区域,它们在内存管理和使用方式上有一些区别。栈上的内存分配和释放是自动的、快速的,适用于存储固定大小的数据。堆上的内存分配和释放是手动的、相对较慢的,适用于存储动态大小的数据。内存分配方式 栈:栈上的内存分配是自动的,由编译器在编译时进行。栈上的数据遵循后进先出(...

  • Github 2024-03-16 Rust开源项目日报 Top10

    时间:2024-03-19 11:05:12

    创建周期:1218 天 开发语言:Rust, Dart 协议类型:GNU Affero General Public License v3.0 Star数量:58141 个 Fork数量:6255 次 关注人数:58141 人 贡献人数:230 人 Open Issues数量:49 个 Github

  • Rust 开发的高性能 Python 包管理工具,可替换 pip、pip-tools 和 virtualenv

    时间:2024-03-18 09:07:50

    最近,我在 Python 潮流周刊 中分享了一个超级火爆的项目,这还不到一个月,它在 Github 上已经拿下了 8K star 的亮眼成绩,可见其受欢迎程度极高!国内还未见有更多消息,我趁着周末把一篇官方博客翻译出来了,分享给大家。 作者:@charliermarsh 译者:豌豆花下猫@Pytho...

  • Rust教程:How to Rust-从开始之前到Hello World

    时间:2024-03-16 19:36:41

    本文为第0篇 专栏简介 本专栏是优质Rust技术专栏,推荐精通一门技术栈的蟹友,不建议基础的同学(无基础学Rust也是牛人[手动捂脸]) 感谢Rust圣经开源社区的同学,为后来者提供了非常优秀的Rust学习资源 本文使用: 操作系统macOS Sonoma 14 / Apple M1编译器:Rust...