Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net Array.GetLowerBound(int)的用途是什么?_.net_Arrays - Fatal编程技术网

.net Array.GetLowerBound(int)的用途是什么?

.net Array.GetLowerBound(int)的用途是什么?,.net,arrays,.net,Arrays,我不明白这个计划的目的 它是否曾经返回非零?什么时候怎么做 谢谢。理论上,您可以创建具有任何下界或上界的数组进行索引。VB.NET可以使用它来创建下限为1的数组,以便与一些旧的VB版本兼容,但实际上,您可以使用它来创建具有任意下限的数组。在VB中的多维数组或各种COM派生API上,您可以按维度查询下限。数组类型可以基于0或1(即从0或1开始),这也适用于多维数组 这也适用于通过COM互操作公开的阵列。例如,许多Excel API使用基于1的数组,许多API函数使用变量数组作为参数(变量本质上是作

我不明白这个计划的目的

它是否曾经返回非零?什么时候怎么做


谢谢。

理论上,您可以创建具有任何下界或上界的数组进行索引。VB.NET可以使用它来创建下限为1的数组,以便与一些旧的VB版本兼容,但实际上,您可以使用它来创建具有任意下限的数组。

在VB中的多维数组或各种COM派生API上,您可以按维度查询下限。数组类型可以基于0或1(即从0或1开始),这也适用于多维数组

这也适用于通过COM互操作公开的阵列。例如,许多Excel API使用基于1的数组,许多API函数使用变量数组作为参数(变量本质上是作为电子表格单元格的数据类型发明的)


在使用COM互操作时,您仍然必须很好地使用这些API和类型系统。它们最初设计用于VBA,“经典”VB4-6语言变体由于与COM紧密耦合而具有真正的巴洛克式系统。C#et.al.的.Net类型的系统比他们基于COM的前辈稍微少一些痛苦,但在使用COM互操作时,您仍然会感到痛苦

有一个
CreateInstance
调用设置非零下限:

CreateInstance(类型,Int32[],Int32[])

创建具有指定类型和维度长度以及指定下限的多维数组

将此与:

CreateInstance(类型,Int32[])

创建指定类型和维度长度的多维数组,并使用基于零的索引。维度长度在32位整数数组中指定


(事实上,对于任何其他重载。在六个
CreateInstance
重载中,有五个创建了一个基于零的数组。)

您拼错了“misspelled”;)不,我在“巴洛克怪兽”中真正指的是“巴洛克”,而不是“如果不是巴洛克,就不要修复它。”;-)