值
规则 ID
CA1814
类别
“性能”
修复是中断修复还是非中断修复
重大
原因
将成员声明为多维数组,这可能会浪费某些数据集的空间。
规则说明
在多维数组中,每个维度中的每个元素都具有与该维度中的其他元素相同的固定大小。 在交错数组(即多个数组构成的数组)中,每个内部数组的大小可以不同。 通过仅使用给定数组所需的空间,就不会浪费空间。 此 CA1814 规则建议切换到交错数组以节省内存。
如何解决冲突
若要解决此规则的冲突,请将多维数组更改为交错数组。
何时禁止显示警告
如果多维数组不会浪费空间,则可以禁止显示此规则的警告。
示例
以下示例显示了交错数组和多维数组的声明。
Imports System
Public Class ArrayHolder
Private jaggedArray As Integer()() = {New Integer() {1, 2, 3, 4}, _
New Integer() {5, 6, 7}, _
New Integer() {8}, _
New Integer() {9}}
Private multiDimArray As Integer(,) = {{1, 2, 3, 4}, _
{5, 6, 7, 0}, _
{8, 0, 0, 0}, _
{9, 0, 0, 0}}
End Class
public class ArrayHolder
{
int[][] jaggedArray = { new int[] {1,2,3,4},
new int[] {5,6,7},
new int[] {8},
new int[] {9}
};
int[,] multiDimArray = {{1,2,3,4},
{5,6,7,0},
{8,0,0,0},
{9,0,0,0}
};
}
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。