栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么不能在Go中将变量作为多维数组大小放置?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么不能在Go中将变量作为多维数组大小放置?

因为Go是一种静态类型的语言,这意味着需要在编译时知道变量的类型。

Go中的数组是固定大小的:在Go中创建数组后,以后就无法更改其大小。这是这样一种程度,即一个阵列的长度是阵列类型的一部分(这意味着类型

[2]int
[3]int
2层不同的类型)。

通常在编译时不知道变量的值,因此使用该变量的值作为数组长度,在编译时将不知道类型,因此不允许使用。

如果您在编译时不知道大小,请使用切片而不是数组(还有其他原因使用切片)。

例如此代码:

func addImage(path string, image string, Height int, Width int){    var Size int    Size = Width * Height    var Pix [Size][3]int    // use Pix}

可以转换为创建和使用像这样的切片:

func addImage(path string, image string, Height int, Width int){    var Size int    Size = Width * Height    var Pix = make([][3]int, Size)    // use Pix}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/484361.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号