- 必须遵守的命名方案
结构(和其他类型)、枚举(包括枚举值)和trait(但不包括它们的函数/方法)需要以大写字母开头,并且不能包含任何下划线 。
- 没有增量运算符
没有 i(或者i、i-- 和 --i),因为这些运算符有点混乱 。
你确定如下操作的结果吗(尤其是在没有指定语言的情况下)?
a[ii] = iia[i]问题在于,直到最近上述运算的实际行为还是未定义的,这意味着不同的编译器(甚至可能是同一个编译器的不同版本)可能会产生不同的行为 。为了解决这个问题并提高代码的可读性(Rust非常重视可读性和冗长,甚至不惜多敲几次键盘),Rust仅支持 i= 1,几乎所有人都知道该表达式的意思是变量i加1,并返回最终结果 。所以,你不必知道 i实际上返回的是原始值(不是新值),而且还会加1 。
此外 , 运算符重载会使用trait,但本文不打算详细讨论 。
- 几乎所有的东西都是表达式
你可以直接使用 if 来代替其他语言中常见的三元运算符:
let var = if something { 1 } else { 2 };循环会根据break的调用返回结果 。你可以利用它,反复重试某个操作,直到成功 。

文章插图
变量变量通过 let 声明,并且有作用域 。类型是可选的,Rust 非常擅长推断类型(比 Typescript 更出色) 。
let var: usize = 1;上述变量定义了一个类型为usize的变量var(usize是一个32或64位的数字 , 具体取决于计算机架构) 。
你可以重复声明变量 。当重复声明某个变量时 , 之前声明的变量就会被删除(除非该变量被引用,在这种情况下只有引用会保留,而原始变量会被删除) , 而且变量的类型也会改变 。
let var = 1;let var = "something";在默认情况下 , 变量是不可变的 。如果你想修改它们,则需要在 let 之后加上关键字 mut 。
let var = 1;var = 2; // 错误!不可以修改不可变的变量let mut var = 1;var = 2;
文章插图
函数
fn main(arg: u8) -> u8 { // something arg}函数的行为几乎与JS一模一样 , 只不过它们并不是数据类型,而且语法上略有不同 。
参数的指定与 Typescript 类似,即key: type 。返回类型通过 -> 指定 。
有趣的是,虽然 Rust 需要分号,但如果最后一个表达式后面的分号忘写了,它会被作为返回值(即使没有 return 关键字) 。

文章插图
If语句
if something {} else {} else if something_else {}if 语句的使用非常基本,不在此赘述 。
有一点需要注意,如非必要,使用括号实际上是错误的 。你可以利用括号指定执行顺序:
if (something || something_else) && something_other {}如前所述,if 也可以返回一个值,而该值可用于赋值、参数、返回或其他地方 。
相关经验推荐
- 放弃简约风吧!过年回家这样打扮,时髦贵气,美得好高级
- 大地色真是秋天yyds,宋轶一身大地色高级又甜美,不止显白还显瘦
- 怎么从成品尺寸推算坯布幅宽
- 秦始皇如何从吕不韦手中夺权
- 为什么建议男生多穿阔腿裤?看这几位明星就知道了,显瘦、高级、太时尚,还提气质!
- 女生微信网名高级冷酷 微信网名高冷霸气冷酷女
- 自然人从什么时起享有民事权利
- 盘点微胖女生的显瘦穿搭,掌握2个搭配要点,造型高级又有范
- 丈夫酒驾接妻子下班被抓:明天能从电视上看到我吗?
- 春天一句话 春天一句话精选
