我正在尝试声明一个如下所示的数组
arr := [
[0, 0],
[1, 2],
[2, 4],
]
// type: [][]int
但是我从推理中得到的类型是
[][]int
,相反我想声明[][]float32
。当我尝试以下语法时,我得到了 [][]f64
。
arr := [
[0.0, 0],
[1.0, 2],
[2.0, 4],
]
// type: [][]f64
我想要的是像下面这样的简单方法,我们可以在
c
中声明
float arr[][2] = {
{0, 0},
{1, 2},
{2, 4}
};
// type: f32
我正在阅读 v 文档,但找不到任何有关如何在数组中给出显式类型的信息。
V 将通过第一个元素的类型“自动”推断类型:
arr := [
[f32(0), 0],
[f32(1), 2],
[f32(2), 4],
]
println('${typeof(arr)}')
// -> [][]f32
另一种更短的方法是先初始化它:
arr := [][]f32{len: 3, init: []f32{len: 2}}
println('${typeof(arr)}')
// -> [][]f32