是否可以使用泛型的类型参数控制数组的大小?

拜伦

以下内容仅作为示例,并非有效的Rust代码。

struct Vec<T: Sized, Count> {
    a: [T; Count]
}

类似的东西在C ++模板中是可能的,但是我在Rust中还没有看到它。

马修M.

此功能尚不可用。RFC 2000 — const泛型将在实现它并跟踪问题进展时为其提供支持#44580计划为Rust 1.51提供基本支持。

在每晚的Rust中,您的示例如下所示:

// 1.51.0-nightly (2020-12-30)

struct Vec<T: Sized, const COUNT: usize> {
    a: [T; COUNT],
}

如果您看一下Rust的设计,您会注意到它首先是从解决最棘手的问题(内存安全,无数据争用)开始的,但是在其他地方,它还是“不完整的”(相比之下,达成)。

特别是,当今的通用结构和功能有些受限制:

  • 缺乏高级类型(HKT)
  • 缺少非类型参数=>数组是特殊情况,并且为数组实现特征是一个已知问题,解决方法是为几个不同的维度实现它
  • 缺少可变参数=>元组是特殊情况,并且为所有元组实现特征也同样困难

目前,还没有实现这些功能,不是因为不需要它们,而是因为时间紧缺。Rust 1.0的想法不是发布不会演进的最终产品,而是要从中开始的稳定基础。某些或全部都会来。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

热巧克力-是否可以使用泛型实现我自己的对象类型?

来自分类Dev

是否可以重用某个类的泛型的类型参数

来自分类Dev

Kotlin-是否可以推断泛型类型参数?

来自分类Dev

在Java中,是否可以使用具有两个类型参数的泛型接口作为每个具有一个固定类型参数的子类型接口的基础?

来自分类Dev

如何使用类型参数符合协议的泛型数组?

来自分类Dev

注释泛型-是否可以将泛型类型参数引用为T而不是其实际类型?

来自分类Dev

非泛型方法是否可以返回泛型类型?

来自分类Dev

(在Scala中)可以使用类的泛型类型参数来完成,而不能使用抽象类型成员来完成吗?

来自分类Dev

我可以使用泛型来推断实际类型而不是已知类型吗?

来自分类Dev

Java:是否可以将Class <?>对象与泛型类型参数进行比较?

来自分类Dev

是否可以从泛型中获取类型,作为参数给出

来自分类Dev

是否可以从 Typescript 中的非构造函数方法参数推断泛型类类型?

来自分类Dev

TypeScript泛型:可以使用圆形或自绑定类型变量吗?

来自分类Dev

您可以使用特定的类型化类来继承泛型类吗?

来自分类Dev

我可以使Swift枚举泛型,所以我可以使用它的情况来为泛型类推断类型吗?

来自分类Dev

使用泛型参数化属性类型

来自分类Dev

是否可以使用Java中的两个泛型来创建对象?

来自分类Dev

在Orika中定义映射时,实际上是否可以使用泛型?

来自分类Dev

Android Java是否支持泛型类型的原始类型参数?

来自分类Dev

有什么方法可以避免在使用泛型参数调用方法时进行类型转换?

来自分类Dev

在不考虑泛型类型参数的情况下检查类型是否实现了泛型接口

来自分类Dev

在不考虑泛型类型参数的情况下检查类型是否实现了泛型接口

来自分类Dev

计算泛型结构的大小,其中泛型参数仅限于基本类型

来自分类Dev

如何实现Java方法在Scala中返回使用数组参数化的泛型类型?

来自分类Dev

使用静态解析的类型参数是否可以使用咖喱参数调用类方法?

来自分类Dev

使用静态解析的类型参数是否可以使用咖喱参数调用类方法?

来自分类Dev

使用反射方法检索类的泛型参数是否可以保证工作(就我而言)?

来自分类Dev

是否可以映射(JPA)在抽象超类中使用泛型的Java类型层次结构?

来自分类Dev

是否可以将命名元组与泛型类型声明一起使用?

Related 相关文章

  1. 1

    热巧克力-是否可以使用泛型实现我自己的对象类型?

  2. 2

    是否可以重用某个类的泛型的类型参数

  3. 3

    Kotlin-是否可以推断泛型类型参数?

  4. 4

    在Java中,是否可以使用具有两个类型参数的泛型接口作为每个具有一个固定类型参数的子类型接口的基础?

  5. 5

    如何使用类型参数符合协议的泛型数组?

  6. 6

    注释泛型-是否可以将泛型类型参数引用为T而不是其实际类型?

  7. 7

    非泛型方法是否可以返回泛型类型?

  8. 8

    (在Scala中)可以使用类的泛型类型参数来完成,而不能使用抽象类型成员来完成吗?

  9. 9

    我可以使用泛型来推断实际类型而不是已知类型吗?

  10. 10

    Java:是否可以将Class <?>对象与泛型类型参数进行比较?

  11. 11

    是否可以从泛型中获取类型,作为参数给出

  12. 12

    是否可以从 Typescript 中的非构造函数方法参数推断泛型类类型?

  13. 13

    TypeScript泛型:可以使用圆形或自绑定类型变量吗?

  14. 14

    您可以使用特定的类型化类来继承泛型类吗?

  15. 15

    我可以使Swift枚举泛型,所以我可以使用它的情况来为泛型类推断类型吗?

  16. 16

    使用泛型参数化属性类型

  17. 17

    是否可以使用Java中的两个泛型来创建对象?

  18. 18

    在Orika中定义映射时,实际上是否可以使用泛型?

  19. 19

    Android Java是否支持泛型类型的原始类型参数?

  20. 20

    有什么方法可以避免在使用泛型参数调用方法时进行类型转换?

  21. 21

    在不考虑泛型类型参数的情况下检查类型是否实现了泛型接口

  22. 22

    在不考虑泛型类型参数的情况下检查类型是否实现了泛型接口

  23. 23

    计算泛型结构的大小,其中泛型参数仅限于基本类型

  24. 24

    如何实现Java方法在Scala中返回使用数组参数化的泛型类型?

  25. 25

    使用静态解析的类型参数是否可以使用咖喱参数调用类方法?

  26. 26

    使用静态解析的类型参数是否可以使用咖喱参数调用类方法?

  27. 27

    使用反射方法检索类的泛型参数是否可以保证工作(就我而言)?

  28. 28

    是否可以映射(JPA)在抽象超类中使用泛型的Java类型层次结构?

  29. 29

    是否可以将命名元组与泛型类型声明一起使用?

热门标签

归档