Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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
C# 根据属性调整数组大小_C#_Arrays_Resize - Fatal编程技术网

C# 根据属性调整数组大小

C# 根据属性调整数组大小,c#,arrays,resize,C#,Arrays,Resize,如果我想调整这个数组的大小,那么我的第一个想法是: private T[] Elements { get; set; } 但是我不认为这是调整数组大小的最有效的方法 谢谢你分享你的意见 PS:我的目标是创建一个动态数组,而不使用列表,您可以尝试这样处理它: T[] tempContainer = new T[Capacity*2]; Array.Copy(Elements, tempContainer, Capacity);

如果我想调整这个数组的大小,那么我的第一个想法是:

private T[] Elements { get; set; }
但是我不认为这是调整数组大小的最有效的方法

谢谢你分享你的意见


PS:我的目标是创建一个动态数组,而不使用列表

您可以尝试这样处理它:

            T[] tempContainer = new T[Capacity*2];
            Array.Copy(Elements, tempContainer, Capacity);
            Elements = tempContainer
此外,您当前的“复制”版本应该会失败,因为两个数组都不够长(对于tempContainer always和元素,如果
Capacity*2
Elements.Length
),请参阅


还有,为什么不将
元素
声明为字段?

您可以尝试这样处理它:

            T[] tempContainer = new T[Capacity*2];
            Array.Copy(Elements, tempContainer, Capacity);
            Elements = tempContainer
此外,您当前的“复制”版本应该会失败,因为两个数组都不够长(对于tempContainer always和元素,如果
Capacity*2
Elements.Length
),请参阅


还有,为什么不将
元素
声明为字段?

谢谢您的评论!我仍在学习计算机科学,不幸的是我不知道什么是一个领域。“请随意告诉我如何使用一个‘场地’,祝你有愉快的一天。”大师。基本上删除
{get;set;}
谢谢您的评论!我仍在学习计算机科学,不幸的是我不知道什么是一个领域。“请随意告诉我如何使用一个‘场地’,祝你有愉快的一天。”大师。基本上删除
{get;set;}
var tempContainer = Elements;
Array.Resize(ref tempContainer, Capacity*2);
Elements = tempContainer;