【RUST】基础

33
摘要由CSDN通过智能技术生成

查看rust版本

caibin@caibin-MS-7C82:~/my/rust$ rustc --version

rust一共有三个版本:nightly,beta,还有stable。不稳定特性只在 Nightly Rust 有效

Rust切换到night版本

rustup override set nightly

use

use std::sync::Mutex;

也就是引用了std的sync中的mutex

extern crate

derive

No Rust toolchain configured

请添加图片描述

No Cargo projects found

请添加图片描述
只要根目录有cargo.toml点一下attach即可

错误处理

可恢复错误

就是可再次尝试的,一般情况下都是可恢复的,比如打开一个不存在的文件

通过一个Result类型解决,比如一般打开文件都返回的是Result类型的枚举,然后后面用match表达式或者使用unwrap(简单的多)或者使用expect,枚举里面的错误用panic!打印

如果我们想把错误返回给函数调用方,可以使用?的形式,在语句后面加个?即可

不可恢复错误

就是俗称的BUG,通过panic!宏来执行,打印一个错误信息,展开,清理调用栈,退出程序

展开意思是往回走,这样工作量比较大,也可以立即终止调用栈由操作系统清理,需要在cargo.toml设置panic = 'abort’即可

我们在代码里不需要写panic,错误会自动调用的

panic可能出现在我们的代码里,也可能出现在我们依赖的代码里

panic

一般是不可恢复的错误,也就是人为处理

unwrap

其实就是取代result<T,E>和match这种使用方式,如果result是ok,就返回value,否则就panic!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值