Merge pull request #315 from happyd0ggie/patch-2

Update intro.md
pull/316/head
Sunface 3 years ago committed by GitHub
commit e0597ea77c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -33,7 +33,7 @@ fn main() {
`read`函数也非常有趣,它返回一个`!`,这个表明该函数是一个发散函数,不会返回任何值,包括`()`。`unimplemented!()`告诉编译器该函数尚未实现,`unimplemented!()`标记通常意味着我们期望快速完成主要代码,回头再通过搜索这些标记来完成次要代码,类似的标记还有`todo!()`,当代码执行到这种未实现的地方时,程序会直接报错: 你可以反注释`read(&mut f1, &mut vec![]);`这行,然后再观察下结果。 `read`函数也非常有趣,它返回一个`!`,这个表明该函数是一个发散函数,不会返回任何值,包括`()`。`unimplemented!()`告诉编译器该函数尚未实现,`unimplemented!()`标记通常意味着我们期望快速完成主要代码,回头再通过搜索这些标记来完成次要代码,类似的标记还有`todo!()`,当代码执行到这种未实现的地方时,程序会直接报错: 你可以反注释`read(&mut f1, &mut vec![]);`这行,然后再观察下结果。
同时,从代码设计角度来看,关于文件操作的类型和函数应该组织在一起,散落得到处都是,是难以管理和使用的。而且通过`open(&mut f1)`进行调用,也远没有使用`f1.open()`来调用好,这就体现出了只使用基本类型局限性:**无法从更高的抽象层次去简化代码**。 同时,从代码设计角度来看,关于文件操作的类型和函数应该组织在一起,散落得到处都是,是难以管理和使用的。而且通过`open(&mut f1)`进行调用,也远没有使用`f1.open()`来调用好,这就体现出了只使用基本类型局限性:**无法从更高的抽象层次去简化代码**。
接下来,我们将引入一个高级数据结构 - 结构体`struct`,来看看复合类型是怎样更好的解决这类问题。 开始之前先来看看Rust的重点也是难点字符串`String`和`&str`。 接下来,我们将引入一个高级数据结构 - 结构体`struct`,来看看复合类型是怎样更好的解决这类问题。 开始之前先来看看Rust的重点也是难点字符串`String`和`&str`。

Loading…
Cancel
Save