gpt4 book ai didi

rust - 为什么 len() 和 is_empty() 没有在特征中定义?

转载 作者:行者123 更新时间:2023-12-03 11:32:19 24 4
gpt4 key购买 nike

Rust 中的大多数模式都是由特征(IteratorFromBorrow 等)捕获的。

为什么会出现像 len 这样普遍的模式?/is_empty在标准库中没有相关的特征?这会导致我没有预见到的问题吗?它被认为是无用的吗?还是只是没有人想到它(这似乎不太可能)?

最佳答案

Was it deemed useless?



我猜这就是原因。

知道某物是空的或长度为 15 的情况下,你能做什么?几乎什么都没有,除非你也有办法访问集合的元素。统一集合的特征是 Iterator .特别是一个迭代器可以告诉你它的底层集合有多少元素,但它还可以做更多的事情。

另请注意,如果您需要 Empty trait,您可以为所有标准集合创建一个并实现它,这与大多数语言中的接口(interface)不同。这就是特质的力量。这也意味着标准库不需要为每个用例提供小的实用程序特征,它们可以由库提供!

关于rust - 为什么 len() 和 is_empty() 没有在特征中定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60449514/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com