rust - 从 const 泛型类型创建别名类型
问题描述
警告:这是几乎生锈。您需要执行此命令行:(rustup default nightly
并rustup default stable
返回到以前的配置)
我想从另一种类型中定义一种类型。如果我从一个 const 泛型类型(参见 1)创建一个类型,它就可以工作。但是如果我从另一个 const 泛型类型创建一个 const 泛型类型,它就不起作用(参见 2)
我应该怎么办?
#![feature(const_generics)]
struct Board<T, const WIDTH: usize, const HEIGHT: usize> {
array: [[T; WIDTH]; HEIGHT],
}
type a = Board<i32,3,3>; // works (1)
type SquareBoard<T, const Dim: usize> = Board<T,WIDTH=Dim,HEIGHT=Dim>; // doesn't work (2)
解决方案
我认为您不必拼出 const 参数名称(就像您不必拼出类型参数名称一样):
#![feature(const_generics)]
struct Board<T, const WIDTH: usize, const HEIGHT: usize> {
array: [[T; WIDTH]; HEIGHT],
}
type a = Board<i32,3,3>; // works (1)
type SquareBoard<T, const Dim: usize> = Board<T, Dim, Dim>; // works (2)
推荐阅读
- javascript - 使用一条线将画布分成两个新画布
- android - 面部认证,如 Android 中的手指认证
- ios - 如何在 iOS 10 中不使用 healthkit 获取睡眠数据
- java - 错误:无法设置 io.appium.java_client.MobileElement 字段在框架中抛出
- bash - 如何在 bash 中进行搜索、输入文本和替换一行?
- asp.net - 如何根据我在同一页面中使用删除按钮从查询中检索到的记录数来实现多个详细信息视图控件?
- asp.net - 在 MVC 中同时更新多条记录
- android - 自定义扫描仪视图
- laravel-5 - Axios GET 请求进度条
- reactjs - React + Typescript + GraphQL:如何处理 null