Rust编程小知识
文章平均质量分 59
Rust语言小知识、小技巧。
liberg
JAVA/大数据/前端(Web/H5/Android)
展开
-
Rust中iter()和into_iter()的区别
iter()调用得到的迭代器,其中迭代的是元素的的引用(借用)。into_iter()调用得到的迭代器,其中迭代的是元素本身(占据所有权)。原创 2022-10-13 16:21:57 · 2106 阅读 · 0 评论 -
Rust模式匹配
模式匹配应用于枚举类型/字符串常量类型;带条件(guard)的模式匹配;open range模式匹配;带参数的模式匹配。原创 2022-09-09 09:07:28 · 478 阅读 · 0 评论 -
Rust 列表(Vec)复制
Rust如何复制列表?原创 2022-07-28 15:11:22 · 1674 阅读 · 0 评论 -
rust反向遍历rev()
rust反向遍历rust Iterator反向遍历rust rev()原创 2022-07-20 18:14:37 · 1214 阅读 · 0 评论 -
Rust Rc+RefCell详解,实现二叉树
rust Rc/RefCell的使用;rust下表达一颗二叉树;rust编译报错:error[E0507];原创 2022-05-24 08:25:42 · 2766 阅读 · 4 评论 -
rust中的map_or()和map_or_else()函数详解
剖析rust中Option和Result提供的对象方法:map_or()和map_or_else()原创 2022-05-19 22:59:11 · 2245 阅读 · 0 评论 -
VSCode/rust-analyzer:Request textDocument/completion failed
Request textDocument/completion failed原创 2022-05-07 12:41:26 · 2291 阅读 · 0 评论 -
Rust判断字符是字母还是数字
遍历字符串,判断其中的字符是数字还是字母。原创 2022-05-05 12:14:54 · 1373 阅读 · 0 评论 -
Rust语言强在哪 + 写Rust代码的感受
本文探讨Rust语言为什么强大,以及谈谈笔者写Rust代码的一些感受。一句话总结,Rust强在哪,可以浓缩为4个词:安全、高效、便捷、优雅。原创 2022-04-28 08:29:13 · 2746 阅读 · 0 评论 -
Rust小知识:“..”在Rust中的使用
..定义一个Range..放在一个对象前面,将对象的成员展开原创 2022-04-14 11:44:34 · 843 阅读 · 0 评论 -
Rust类型转换
as关键字用于原生数值类型之间的转换;字符串和数值类型之间的转换;String和&str类型的转换;From Into Deref原创 2022-04-13 23:04:31 · 4085 阅读 · 0 评论 -
rust随机整数、浮点数生成
Rust代码中使用rand库生成随机数。原创 2022-04-13 12:37:14 · 2063 阅读 · 1 评论 -
Rust学习资源清单
官方学习栏目:https://www.rust-lang.org/learn第三方库文档:https://docs.rs/原创 2022-04-13 10:29:59 · 197 阅读 · 0 评论 -
Rust问号?操作符: the `?` operator can only be used in a function that returns `Result` or `Option`
rust中问号?操作符;main()函数返回值;Termination trait;原创 2022-04-06 23:13:15 · 6039 阅读 · 0 评论 -
Rust格式化输出:println、format格式化参数详解
println!("0b{:b}", 0b11_01); // 二进制println!("0o{:o}", 10); // 八进制println!("0x{:x}", 0xFF); // 十六进制(小写)println!("0x{:X}", 0xFF); // 十六进制(大写)println!("{:p}", &100); // 打印引用或者指针所指对象的内存地址println!("{:e}", 1000f32); // 1e3,科学计数(小写)...原创 2022-04-05 16:22:40 · 3475 阅读 · 0 评论 -
Rust 08:函数和闭包(FnOnce、FnMut、Fn)
Rust是函数式编程语言,函数是一等公民。函数本身可以作为参数进行传递,也可用作函数返回值的类型。闭包是能够捕获当前上下文中变量的一种特殊结构,能被当做函数一样调用。原创 2022-03-29 23:11:37 · 2574 阅读 · 0 评论 -
Rust 07: 生命周期标注(‘a, ‘static)
rust生命周期参数('a, 'static)、生命周期参数标注的方法。原创 2022-03-28 13:11:57 · 5238 阅读 · 0 评论 -
Rust 06: 变量分配在堆还是栈上 + 虚拟地址空间
一个可执行文件,运行起来之后就会成为操作系统中一个活动的进程。每一个进程都有自己独立的虚拟地址空间。堆、栈、虚拟地址空间;Rust中变量分配在堆还是栈上?原创 2022-03-26 23:38:37 · 1925 阅读 · 3 评论 -
Rust如何修改字符串String中的字符
Rust 修改String中的字符。unsafe、remove/insert原创 2022-03-26 21:23:57 · 1630 阅读 · 0 评论 -
Rust 04: enum枚举 + match模式匹配 + Option<T> + Result<T,E>+ map_or/map_or_else
enum、match、Debug trait、Option<T>、Resut<T,E>;unwrap()和expect()从Option/Result中提取值,或者panic!map_or/map_or_else在提取值的同时会进一步处理。原创 2022-03-21 09:42:13 · 1649 阅读 · 0 评论 -
Rust 03: Vec列表、二维列表、子列表、列表切片
rus中Vec列表/二维列表的创建、遍历、排序,列表切片。列表可以当成Stack来使用。原创 2022-03-20 10:33:29 · 3697 阅读 · 0 评论 -
Rust 02:数组/二维数组 + 遍历 + 数组切片 + 排序 + 初识闭包
Rust数组/二维数组、数组遍历、数组切片;认识闭包;数组排序。原创 2022-03-19 09:29:15 · 4078 阅读 · 0 评论 -
Rust 01: i32/u32等数值类型 + 空值() + 元组tuple + 类型别名 + assert断言
认识rust中的基本数值类型、空值()、元组tuple、assert!宏;给一个类型定义别名;初识std::mem::size_of(),std::mem::size_of_val()。原创 2022-03-18 15:01:48 · 2067 阅读 · 0 评论 -
小工具推荐:tokei(高效统计代码行数)
tokei是一个针对代码的高效统计程序(CLI),主流系统都有发布版本,下载地址:https://github.com/XAMPPRocky/tokei/releases简单使用:tokei test.html #统计单个文件tokei your_codes_dir #统计某个目录下的所有文件...原创 2022-01-25 12:28:05 · 1053 阅读 · 0 评论 -
细说Rust语言的所有权机制和线程安全
Rust所有权机制的设计是这门语言的最大特点,也是其内存安全和多线程并发安全的基石。多线程、move(所有权转移)语义、Rc、Arc、Mutex。原创 2020-10-24 23:57:49 · 1493 阅读 · 0 评论 -
Win10/11系统Rust安装 + WebAssembly入门实战(从0到1超详细)
1 Windows 10下安装Rust2 Rust Hello World3 WebAssembly入门3 rustup 更新4 crates搬家:指定CARGO_HOME4 VSCode插件安装5 Rust + WebAssembly上手初探6 不用Webpack打包前端代码,直接浏览器访问原创 2020-07-28 10:22:24 · 8749 阅读 · 0 评论 -
Rust所有权机制和内存安全详解
Rust所有权机制的设计是这门语言的最大特点,也是其内存安全和多线程并发安全的基石。本文先来探讨一下Rust的所有权机制和内存安全。1. 先来定义一个基础类Pointstruct Point { x: i32, y: i32,}struct从C语言借鉴而来,用来定义一个结构体。Point结构体中包含x和y两个32位int类型的成员。2. 所有权机制的核心概念一块内存在同一个时刻,只会有一个所有者;如果进行赋值,所有权就会发生变更。fn test_ownership() {原创 2020-10-10 18:10:27 · 1562 阅读 · 0 评论