2011-03-29 2 views
2

나는 C# dll을 반영하고 있으며 내부 정적 읽기 전용을 볼 수있다 $ArrayType$16008 누군가 이걸 말해 줄 수 있니?

[StructLayout(LayoutKind.Explicit, Size=16008, Pack=1)] 
public struct $ArrayType$16008 
{ 
} 

컴파일러에서 생성 했습니까? 또는 반사경이 볼 수없는 UserDefined 유형입니까?

+1

주어진 '16008'모양이 반사경에 의해 생성되었다고 말할 수 있습니다 ... 너의 것이 아니라면 DLL을 디 컴파일하는 데 도움이 될지 잘 모르겠다. ... –

+4

충분히 크게 초기화하면 배열 (예 : byte [])을 사용하면 C# 컴파일러는 해당 크기의 형식을 생성하고 해당 형식의 인스턴스를 사용하여 System.Runtime.CompilerServices.RuntimeHelpers.InitializeArray()를 사용하여 배열을 초기화합니다. 아마도 요소별로 배열 요소를 초기화하는 것보다 빠르기 때문일 것입니다. 보고있는 유형 중 하나 일 수 있습니다. –

+1

이러한 유형을 생성하는 C++/CLI 컴파일러는 모호합니다. – Ani

답변

0

의견에 따르면. 컴파일러가 생성했습니다.

역순으로 설계된 C# 코드로 문자열 외부에서 사용 된 달러 기호를 볼 때마다 컴파일러가 생성됩니다.