我想定义新数组,例如:
string[] str=new string[maxsize];
现在我可以为maxsize设置的最大数量是什么?
答案 0 :(得分:3)
更新:根据下面的评论,.NET将数组限制为2GB的成员(或字节?)。我猜这是因为它使用了一个带符号的32位整数作为索引,但这只是一个疯狂的猜测。
无论如何,最大值远远超出了日常使用所需的范围。更大的问题是为什么你想要分配一个包含那么多成员的数组。如果您需要一个特别庞大的阵列,那么您应该按需分配一个您需要的特定大小(或使用动态调整大小的容器)。
...但如果您有特殊需要,可以随时将多个阵列链接在一起。每个数组的最后一个成员可以指向下一个数组(或指向无结束单个链表的任何内容)。
答案 1 :(得分:0)
我不确定我是否理解你的要求,但这是我的评论。
为什么需要为新数组设置maxsize?相反,你可以简单地使用列表,它将根据需要动态增加。
代表:List<string> str = new List<string>();
另外,如果你将一些maxsize设置为数组,那么你的程序可能会浪费宝贵的内存。