由于一个学期没有碰Rust,相关知识殆已忘尽。最近各课逐渐停授,余出时间来从基础重温这些知识,也算是对没有写的基础知识的补充。另外这次复习主要参照了Youtube上的CrushCourse视频,两个小时的视频一气看下来还是很累的啊。原视频链接下载Rust,并在VSCode环境下使用首先打开Rust官网,点击GetStarted,下载对应的64位版本。运行下载程序并启用默认设置就可以。我的电脑里已经有旧版本,故只进行了更新操作。然后找到下载的bin文件夹路径添加环境变量即可,这个路径一般在users/YourName/.cargo/bin中然后在VSCode的插件里搜索Rust,安装列表第一个插
文章目录创建组件show函数egui系列:初步创建首先,用cargo创建一个新项目,并添加eframecargonewhellocdhellocargoaddeframecargorun尽管默认创建的项目只实现了输出Helloworld功能,但添加了eframe库,所以下载需要一点时间。创建成功后,直接把下面的代码写入main.rs文件中,这些代码来自egui的hello_world示例。#![cfg_attr(not(debug_assertions),windows_subsystem="windows")]useeframe::egui;structMyApp{name:String,a
目录1、用Result处理可恢复的错误1.1 传播错误的简写:?运算符1.2哪里可以使用?运算符2、要不要panic!2.1 示例、代码原型和测试都非常适合panic2.2 当我们比编译器知道更多的情况2.3 错误处理指导原则2.4 创建自定义类型进行有效性验证2.5总结1、用Result处理可恢复的错误1.1 传播错误的简写:?运算符先看下如下示例:fnmain(){fnread_file()->Result{letfile_result=File::open("hello.txt");letmutv=String::new();file_result.unwrap().read_to_st
安装Rust编程语言在Mac上是一个相对简单的过程,但它可能会涉及多个步骤。在本文中,我将详细说明如何在Mac上安装Rust,并提供一些常见问题的解决方法。请注意,由于软件和工具可能会发生变化,因此建议首先查看Rust官方网站以获取最新的安装说明。目录1.打开终端2.安装Homebrew(如果尚未安装)3.安装Rust1.使用Homebrew安装Rust2.使用rustup安装Rust(强烈推荐)4.验证Rust安装 5.升级Rust(可选)6.Cargo(Rust的构建工具和包管理器)7.卸载Rust8.其它工具9.总结1.打开终端要开始安装Rust,首先需要打开终端。你可以在macOS中通
Rust所有权和Move语义所有权和生命周期是Rust和其它编程语言的主要区别,也是Rust其它知识点的基础。动态数组因为大小在编译期无法确定,所以放在堆上,并且在栈上有一个包含了长度和容量的胖指针指向堆上的内存。恰到好处的限制,反而会释放无穷的创意和生产力。Rust所有权规则一个值只能被一个变量所拥有,这个变量被称为所有者。一个值同一时刻只能有一个所有者,也就是说不能有两个变量拥有相同的值。所以对应变量赋值、参数传递、函数返回等行为,旧的所有者会把值的所有权转移给新的所有者,以便保证单一所有者的约束。当所有者离开作用域,其拥有的值被丢弃,内存得到释放。这三条规则很好理解,核心就是保证单一所有
目录1、用panic!处理不可恢复的错误对应panic时的栈展开或终止1.1 使用panic!的backtrace2、用Result处理可恢复的错误2.1 匹配不同的错误 2.2 失败时panic的简写:unwrap和expect2.3 传播错误错误是软件中不可否认的事实,所以Rust有一些处理出错情况的特性。在许多情况下,Rust要求你承认错误的可能性,并在你的代码编译前采取一些行动。这一要求使你的程序更加健壮,因为它可以确保你在将代码部署到生产环境之前就能发现错误并进行适当的处理。Rust将错误分为两大类:可恢复的(recoverable)和 不可恢复的(unrecoverable)错误。
文章目录前言1.在windows上安装rust2.在vscode上安装rust相关插件rust-analyzerRustSyntaxRustTestLens还有其他插件都可安装哦3.创建一个rust项目并运行前言vscode下搭建rust语言开发环境1.在windows上安装rust参考官方安装教程:https://www.rust-lang.org/tools/install我们通过快速方式rustup安装Tips:rust依赖C/C++环境在安装rust前需要先安装C/C++编译环境有两种:1、msvcVisualStudio使用的是msvc这个安装rust一路默认即可2、mingw大家自
想了解更多关于开源的内容,请访问:51CTO鸿蒙开发者社区https://ost.51cto.com背景Rust是一门静态强类型语言,具有更安全的内存管理、更好的运行性能、原生支持多线程开发等优势。Rust官方也使用Cargo工具来专门为Rust代码创建工程和构建编译。OpenHarmony为了集成C/C++代码和提升编译速度,使用了GN+Ninja的编译构建系统。GN的构建语言简洁易读,Ninja的汇编级编译规则直接高效。为了在OpenHarmony中集成Rust代码,并最大程度发挥Rust和OpenHarmony中原有C/C++代码的交互性,采用GN作为统一构建工具,即通过GN构建Rust
目录使用Vector储存列表新建vectorVec::new函数(无初值)vec!宏(有初值)更新vector读取vector的元素注意可变和不可变引用遍历vector中的元素使用枚举来储存多种类型丢弃vector时也会丢弃其所有元素使用字符串储存UTF-8编码的文本什么是字符串?新建字符串更新字符串使用push_str和push附加字符串使用+运算符或format!宏拼接字符串索引字符串内部表现字节、标量值和字形簇字符串slice遍历字符串的方法字符串并不简单使用HashMap储存键值对新建一个哈希map访问哈希map中的值哈希map和所有权更新哈希map覆盖一个值只在键没有对应值时插入键值
目录使用Vector储存列表新建vectorVec::new函数(无初值)vec!宏(有初值)更新vector读取vector的元素注意可变和不可变引用遍历vector中的元素使用枚举来储存多种类型丢弃vector时也会丢弃其所有元素使用字符串储存UTF-8编码的文本什么是字符串?新建字符串更新字符串使用push_str和push附加字符串使用+运算符或format!宏拼接字符串索引字符串内部表现字节、标量值和字形簇字符串slice遍历字符串的方法字符串并不简单使用HashMap储存键值对新建一个哈希map访问哈希map中的值哈希map和所有权更新哈希map覆盖一个值只在键没有对应值时插入键值