2010-07-16 2 views
1

C#에서는 리플렉션을 사용하여 클래스 멤버 (메서드, 속성)뿐 아니라 일부 메서드의 매개 변수 형식을 결정할 수 있습니다. IL 및 .NET 기술로 인해 이것이 가능하다고 생각합니다. 맞습니까? 그렇다면 Visual Studio 2005/2008/2010 .NET에서 C/C++에 대한 리플렉션 또는 유사한 기술을 사용하는 것이 가능합니다. .NET?C/C++에서 런타임 중에 메서드 매개 변수 유형을 확인하는 방법은 무엇입니까?

br, 밀라노.

+1

무엇을 묻는 중입니까? – SLaks

+0

안녕하세요, 질문의 명확한 부분이 무엇입니까? – milan

답변

0

어셈블리의 메타 데이터 때문에 컴파일러가 넣을 수 있습니다. 그리고 그 데이터를 읽을 수있는 광범위한 API. 그리고 필수적인 Object.GetType() 메서드 및 typeof 키워드.

어느 것도 C 또는 C++ 컴파일러에서 사용할 수 없습니다. RTTI를 사용하여 디버그 심볼 파일을 읽으면이 비트를 해킹 할 수 있습니다. 노력할만한 가치가 있는지 의심 스럽습니다.

+0

즉, .NET에서 C/C++ 컴파일러에 이전 버전 (Visual Studio 6)처럼 더 많은 simbols/types가 포함되어 있지 않다는 의미입니다. – milan

+0

그것이 의미하는 바입니다. 그러나 */clr 옵션을 지원합니다 *. 완전히 다른 언어 인 C++/CLI를 컴파일합니다. –

관련 문제