error when creating StaticArray with size from variable
我收到此错误(见图),但我不知道如何解决?
代码:
t = 3
seps = StaticArray(Int32, t).new{
2
}
seps.each{|i| p i}
错误:
Syntax error in eval:2: expecting token ')', not 't'
当我像这样初始化StaticArray时,它可以工作:
seps = StaticArray(Int32, 3).new{
2
}
seps.each{|i| p i}
但是我需要像代码的第一个示例一样初始化数组!
最佳答案
StaticArray具有固定大小,无法在运行时修改。该语法甚至不允许将变量用作通用参数,因为它没有意义。
如果在运行时需要可变大小,则应改用Array。
关于arrays - 为什么从变量创建具有大小的StaticArray会引发错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48381519/