使用CodeDom.CodeArrayCreateExpression只能生成一维数组的创建表达式,对于多维数组就不行了。例如:
int[,] counter = new int[3,2];
查了MSDN上的说明,说是可以通过嵌套来实现多维数组,不过我试了半天,也没有成功。难道MSDN上所说的嵌套是让改用交错数组?
上网查了一下,发现也有人问到这个问题,不过回答是不能生成多维数组的创建表达式。下面是回答,好像是微软的人回答的。
Currently, the CodeDom cannot be used to instantiate multidimensional
arrays. For details, refer to the GeneratorSupport.MultidimensionalArrays
enumeration member in the Visual Studio.NET Documentation.
arrays. For details, refer to the GeneratorSupport.MultidimensionalArrays
enumeration member in the Visual Studio.NET Documentation.
虽然没有解决问题,但至少知道不能这样做,免得在毫无意义的地方浪费时间。