我最近注意到String::find
实际上是一个属于拥有所有权的String
的方法。
但我不明白为什么它不直接成为&str
的方法,这样可以在更多情况下使用(对于String
仍然同样有用)。我是否忽略了造成此种情况的原因,还是这只是历史偶然?
我最近注意到String::find
实际上是一个属于拥有所有权的String
的方法。
但我不明白为什么它不直接成为&str
的方法,这样可以在更多情况下使用(对于String
仍然同样有用)。我是否忽略了造成此种情况的原因,还是这只是历史偶然?
实际上,它仅适用于String
类型,因为它可以Deref
到str
类型:
Methods from Deref<Target=str>
str
的源代码 中找到它。
str
的两个文档页面所困扰,一个是原始的str
,另一个是模块。 - Chris Emerson