摘要: Rust中的资源获取即初始化(Resource Acquisition Is Initialization, RAII): 内存会自动地在拥有它的变量离开作用域后(即生命周期结束时)进行释放。 Rust会在作用域结束的地方(即 } 处)自动调用 drop 函数。 示例程序: { let mut s 阅读全文
posted @ 2022-01-24 14:40 鱼又悲 阅读(103) 评论(0) 推荐(0) 编辑
摘要: String类型会在堆内存上分配自己需要的存储空间,所以它能够处理在编译时位置大小的文本。 示例: 创建一个空字符串: let s = String::new(); 调用String的from函数根据字符串字面量来创建一个String实例: let s = String::from("yuyoube 阅读全文
posted @ 2022-01-24 12:14 鱼又悲 阅读(496) 评论(0) 推荐(0) 编辑
摘要: 变量的作用域:一个对象在程序中有效的范围。 变量从声明的位置开始直到当前作用域结束都是有效的。 下面程序及其注释对变量的有效范围给了具体说明: { // 由于变量s还未被声明,所以它在这里是不可用的 let s = "yuyoubei"; // 从这里开始变量s变得可用 // 执行与s相关的操作 } 阅读全文
posted @ 2022-01-24 12:06 鱼又悲 阅读(117) 评论(0) 推荐(0) 编辑
摘要: Rust中的每一个值都有一个对应的变量作为它的 所有者。 在同一时间内,值有且仅有一个所有者。 当所有者离开自己的作用域时,它持有的值就会被释放掉。 阅读全文
posted @ 2022-01-24 12:01 鱼又悲 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 可以使用 for 循环来遍历集合中的每个元素,例如: use std::io; fn main() { let a = [1, 3, 5, 7, 6, 4, 2]; for ele in a.iter() { println!("ele = {}", ele); } } 我们可以配合标准库中的 Ra 阅读全文
posted @ 2022-01-23 18:18 鱼又悲 阅读(1253) 评论(0) 推荐(0) 编辑
摘要: while条件循环一般格式: while 条件表达式 { 循环体 } 它循环判断条件表达式是否成立,若成立,执行循环体的内容,直到条件表达式不成立或者中途使用break等方式退出循环。 下面的程序输入n,循环输出1~n: use std::io; fn main() { let mut s = St 阅读全文
posted @ 2022-01-23 18:12 鱼又悲 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 使用break后加表达式的形式返回值。 例如,下面的程序输入n,输出>=n的最小的7的倍数: use std::io; fn main() { let mut s = String::new(); io::stdin().read_line(&mut s).unwrap(); let mut n: 阅读全文
posted @ 2022-01-23 18:09 鱼又悲 阅读(136) 评论(0) 推荐(0) 编辑
摘要: if表达式的格式 if 表达式格式: if 条件表达式 { 代码段 } 它表示“条件表达式”为 true 时执行“代码段”的内容。下面的代码当输入为偶数时输出“even”: use std::io; fn main() { let mut s = String::new(); io::stdin() 阅读全文
posted @ 2022-01-22 20:56 鱼又悲 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 语句(statement)指那些执行操作但不返回值得指令;表达式(expression)指会进行计算并产生一个值作为结果的指令。 因为语句不会返回值。所以,在Rust中,不能将一条let语句赋值给另一个变量,如下所示的代码会产生编译时错误: fn main() { let x = (let y = 阅读全文
posted @ 2022-01-22 18:17 鱼又悲 阅读(231) 评论(0) 推荐(0) 编辑
摘要: Rust中使用 fn 关键字定义函数,例如: fn main() { hello_world(); } fn hello_world() { println!("hello,world!"); } 其中第5~7行定义了函数 hello_world,main函数中(第2行)调用了函数 hello_wo 阅读全文
posted @ 2022-01-22 17:59 鱼又悲 阅读(267) 评论(0) 推荐(0) 编辑