是否可以从终端定义一个恒定值?

时间:2019-10-27 21:06:58

标签: arrays rust constants

要在锈中创建阵列,它必须具有预定义的大小:

arr = [u32; 4];

如果我使用一个变量而不是4,它将给出一个错误,除非它是一个常量,例如定义为:

const SIZE: usize = 4;

问题:在运行程序时是否可以根据终端的输入(命令行参数)来定义数组的大小? 我的假设是,必须在编译时定义const,因此不要使用const。也许使用切片是可能的吗?

1 个答案:

答案 0 :(得分:0)

数组必须具有在编译时已知的大小。如果需要动态调整大小的数组,请尝试使用Vec,该数组可以具有任意大小,也可以根据需要进行增大/缩小。