“连续八年成为全世界最受喜爱的语言,无 GC 也无需手动内存管理、极高的性能和安全性、过程/OO/函数式编程、优秀的包管理、JS 未来基石" — 工作之余的第二语言来试试 Rust 吧。本书拥有全面且深入的讲解、生动贴切的示例、德芙般丝滑的内容,这可能是目前最用心的 Rust 中文学习教程 / Book
24.92k
stars
2.15k
forks
source link
'7.3. String、&str 和 str' 内容有误导 #1245
Open
idlercloud opened 1 year ago
这一句是比较显然的错误。作者希望表述的应该是字符串字面量,如
"abc"
这样直接包含在源代码中的字符串,其类型为&'static str
。(注意,这并不意味着有'static
生命周期的str
就不可变了,仍然有办法构造出具有'static
生命周期的&mut str
)然而
str
类型本身是可以修改的,可以试着用Box<str>
调用make_ascii_uppercase()
验证。正如
String
只是Vec<u8>
的包装,str
也基本上只是[u8]
的一个子集,[u8]
可变,str
自然也可变,只是依旧要遵循 utf8 编码罢了。