首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
rust
码码呀
创建于2024-10-15
订阅专栏
系统的分享rust相关知识以及rust常用框架源码以及标准库解读
等 2 人订阅
共34篇文章
创建于2024-10-15
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
rust处理非结构化数据实践
对非结构化json序列化和反序列化 serde_json crate提供了from_str函数来解析JSON切片&str。非结构化JSON可以被解析为一个通用的serde_json::Value类型,
你绝对想不到rust处理csv数据还能这么玩
将记录序列化为 CSV 我们通过一个例子来展示如何序列化 Rust 元组。csv::writer 支持从 Rust 类型到 CSV 记录的自动序列化。write_record 只写入包含字符串数据的简
为了掌握序列化,我自己实现了一个自己的序列化
定义序列化trait 序列化最核心的接口就是Serialize和Deserialize两个,其中Deserialize是反序列化trait,具体的trait定义如下: 给不同类型实现序列化trait
快来看,不堪入目啊rust和sqlite搞出事情来了
创建sqlite数据库 我们使用rusqlite crate打开sqlite数据库连接。 数据插入和查询 Connection::open 将打开在前一章节实例中创建的数据库 cats 的连接。下面的
rust序列化的高级玩法
将字母下划线命名字段序列化成驼峰命名规则 跳过序列化字段 ⚠️使用 skip_serializing 不会跳过 反序列化字段。如果只添加 skip_serializing 属性,然后尝试反序列化数据,
震惊!!rust中序列化还能这么玩
实现Deserialize Deserialize trait如下所示: 这个方法的作用是通过为Deserializer 提供一个Visitor,将类型映射到Serde数据类型,然后由Deserial
实现serde序列化的Serialize trait
我们先看在Serde框架中关于Serialize 和 Deserialize traits的定义: 实现Serialize trait 上面我们已经贴出了Serialize的定义了,里面的deseri
哇哦,强大的rust资源管理真的让人欲罢不能
基于所有权的资源管理 这个模式简单来说是这样的:如果要获取资源,你只要创建一个管理它的对象。如果要释放资源,你只要销毁这个对象,由对象负责为你回收资源。而所谓资源通常指的就是内存。Box,Rc,以及
手动实现一个vec
RawVec 我们需要改造下我们之前的Vec的实现了: 然后我们简化迭代器: Drain 这样就看起来好多了嘛!!! 你以为这就结束了吗,不不,精彩的还在后面让我们继续探索Drain对Vec的影响,本
手动带你实现vec,早日变大神
实现Deref和DerefMut 顺便我们也把DerefMut一并实现了: 到了这里,恭喜啊,现在我们有了len,first,last,索引,分片,排序,iter,iter_mut以及slice能提供
用rust实现一个贪吃蛇游戏(上)
创建项目 项目结构规划 我们创建三个rs文件分别是:draw.rs,game.rs,snake.rs draw.rs: 用来画出贪吃蛇和对应的食物,里面包括to_coord方法用来把逻辑整数坐标转成屏
别再手动写代码了!Rust过程宏帮你自动化一切
过程宏的三种形式 类宏函数(function-like macros):-foo!(...) 派生宏(derive macros): #[derive(Debug)] 属性宏(arribute mac
崩溃!自定义Rust属性原来这么简单,我竟然一直不知道
创建项目 我们这里创建的是一个创建一个名为 Initialize 的派生宏,他会为结构体(struct)自动实现一个初始化方法。我们接着在我们刚才创建的项目中创建一个新的库项目,名为initializ
大神都知道的rust属性,你确定不来了解下吗
属性分类 内置属性 宏属性 派生宏辅助属性 外部工具属性 属性应用场景 所有的程序项声明都可以接受外部属性,同时外部块,函数,实现和模块都可以接受内部属性。 大多数语句都可以接受外部属性。 块表达式也
一文带你理解rust中闭包的原理
闭包和结构体的抽象 闭包表达式会生成具一个有唯一匿名类型的闭包值,该类型我们在代码中无法直接看到,是在编译器底层抽象生成的。闭包类型大致相当于包含捕获的变量的结构体。例如,下面这个闭包: 上面的代码我
一文带你理解rust的闭包
闭包的特性 1.匿名函数 2.捕获变量 3.可变性 4.多态性 5.类型推断 闭包语法 闭包的用法 作为函数参数: 闭包可以作为参数传递给其他函数。 2.作为变量存储: 闭包可以存储在变量中,然后被调
深入浅出rust内存对齐
在 Rust 中,内存对齐是一个重要的概念,它涉及到数据在内存中的存储方式,以及如何优化内存访问的效率。往往一门语言的内存布局以及对齐方式决定了一门语言的性能,因此学会并深入理解rust中内存布局会让
rust中的三胞胎姐妹花String,&str和str总是傻傻分不清吗?
str: str是一个字符串字面量,它是一个指向有效UTF-8编码的不可变字符串切片的指针。str类型是一个切片类型,它不拥有数据,而是指向数据。 它是&str的别名,通常在模式匹配和函数签名中使用。
Rust 中那些让人眼花缭乱的类型转换
as转换 我们先看一个简单的小类型转大类型的例子: 首先我们定义两个变量x和y,x的类型是i32类型,y的类型是u16类型。i32明显表示的范围要比u16大,那么一个大范围类型的数据和一个小范围的数据
下一页