From 1b045509c7e4ee7158e9d14406e59caf020339cb Mon Sep 17 00:00:00 2001 From: 863056768 <51009484+863056768@users.noreply.github.com> Date: Sat, 5 Mar 2022 22:41:22 +0800 Subject: [PATCH] ClosureScript > ClojureScript --- src/basic/variable.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/basic/variable.md b/src/basic/variable.md index 1c0476e8..22ed329a 100644 --- a/src/basic/variable.md +++ b/src/basic/variable.md @@ -4,7 +4,7 @@ ## 为何要手动设置变量的可变性? -在其它大多数语言中,变量一旦创建,要么是可变的,要么是不可变的(ClosureScript),前者为编程提供了灵活性,后者为编程提供了安全性,而 Rust 比较野,选择了两者我都要,既要灵活性又要安全性。 +在其它大多数语言中,变量一旦创建,要么是可变的,要么是不可变的(ClojureScript),前者为编程提供了灵活性,后者为编程提供了安全性,而 Rust 比较野,选择了两者我都要,既要灵活性又要安全性。 能想要学习 Rust,说明我们的读者都是相当有水平的程序员了,你们应该能理解**一切选择皆是权衡**,那么两者都要的权衡是什么呢?这就是 Rust 开发团队为我们做出的贡献,两者都要意味着 Rust 语言底层代码的实现复杂度大幅提升,因此 Respect to The Rust Team! @@ -67,7 +67,7 @@ error: aborting due to previous error 这种规则让我们的代码变得非常清晰,只有你想让你的变量改变时,它才能改变,这样就不会造成心智上的负担,也给别人阅读代码带来便利。 -但是可变性也非常重要,否则我们就要像 ClosureScript 那样,每次要改变,就要重新生成一个对象,在拥有大量对象的场景,性能会变得非常低下,内存拷贝的成本异常的高。 +但是可变性也非常重要,否则我们就要像 ClojureScript 那样,每次要改变,就要重新生成一个对象,在拥有大量对象的场景,性能会变得非常低下,内存拷贝的成本异常的高。 在 Rust 中,可变性很简单,只要在变量名前加一个 `mut` 即可, 而且这种显式的声明方式还会给后来人传达这样的信息:嗯,这个变量在后面代码部分会发生改变。