gpt4 book ai didi

reference - Rust 是否(通常)引用 Voldemort 类型?

转载 作者:行者123 更新时间:2023-11-29 07:48:23 25 4
gpt4 key购买 nike

Voldemort – he who must not be named – types是无法在源代码中写下名称的类型。在 Rust 中,闭包有这样的类型,因为编译器 generates a new internal type for each closure .接受闭包作为函数参数的唯一方法是接受泛型类型(通常称为 F),它被绑定(bind)为 Fn()(或类似)特征。

Rust 中的引用总是包含一个生命周期参数,即使这个生命周期通常可以被省略。生命周期不能明确命名,因为它们代表某种复杂的编译器内部范围。与生命周期交互的唯一方法是使用代表任何生命周期(可能受另一个生命周期限制)的通用参数(通常称为 'a)。当然还有'static可以命名,但这是特例,与我的论点不冲突。

那么:Rust 是否引用 Voldemort 类型?还是我误解了术语“Voldemort 类型”或 Rust 引用?

最佳答案

作为在该领域没有任何特别深厚知识的人:

我认为答案可能是:技术上是的,但过于简化。有点像说“所有类型都是整数数组”;我的意思是,是的,但是您这样做会失去一些有用的语义辨别能力。

Voldemort 类型通常对用户隐藏实现类型,要么因为它只是临时的,要么你不应该使用函数描述的接口(interface)以外的任何东西。引用在技术上整体上是不可命名的,但它不会实际上限制您。我的意思是,即使您可以命名特定的生命周期,我也不认为您可以用它做任何有意义的事情(除了可能在函数内略微更严格的生命周期检查) .

关于reference - Rust 是否(通常)引用 Voldemort 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40203559/

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