【发布时间】:2019-10-27 21:06:58
【问题描述】:
为了在 rust 中创建一个数组,它需要有一个预定义的大小:
arr = [u32; 4];
如果我使用变量而不是 4,则会出错,除非它是一个常量,例如定义为:
const SIZE: usize = 4;
问题:有没有办法在运行程序时根据来自终端的输入(命令行参数)来定义数组的大小? 我的假设是 const 必须在编译时定义,所以不要使用 const。也许使用切片这是可能的?
【问题讨论】:
为了在 rust 中创建一个数组,它需要有一个预定义的大小:
arr = [u32; 4];
如果我使用变量而不是 4,则会出错,除非它是一个常量,例如定义为:
const SIZE: usize = 4;
问题:有没有办法在运行程序时根据来自终端的输入(命令行参数)来定义数组的大小? 我的假设是 const 必须在编译时定义,所以不要使用 const。也许使用切片这是可能的?
【问题讨论】:
数组的大小必须在编译时已知。如果您想要一个动态大小的数组,请尝试改用 Vec,它可以具有任意大小,也可以根据需要增大/缩小。
【讨论】: