2014-02-17 2 views
0

int[] 유형의 elementType이있는 경우, 예를 들어 elementType.MakeArrayType()은 예외를 발생시키고 elementType.GetElementType().MakeArrayType(2)int[,]을 생성합니다. int[][]은 어떻게 만듭니 까?리플렉션으로 들쭉날쭉 한 배열을 만드는 방법은 무엇입니까?

EDIT : 이것은 ProvidedTypeDefinition에서만 발생합니다. 당신은 두 단계로 그것을 할 수 있도록 그것은, 그것은 가변 배열은 단지 배열의 배열입니다 ProvidedTypes.fs

+3

'typeof (int []). MakeArrayType()'은 나를 위해 예외를 throw하지 않습니다. 문제를 보여주는 짧지 만 완전한 프로그램을 보여주십시오. –

답변

3

버그이었다 밝혀졌다 :

Type intArray = typeof(int).MakeArrayType(); 
Type jaggedArray = intArray.MakeArrayType(); 

또는 한 줄에 :

Type jaggedArray = typeof(int).MakeArrayType().MakeArrayType();