2009-07-15 2 views
23

나는 지금 프로젝트를 진행 중이며 일부는 Managed C++를 사용하고있다. 관리되는 C++ 코드에서 DataTable을 만들고 있습니다. 데이터 테이블의 열을 정의하는 동안 열의 유형을 지정해야합니다. C#에서, 그 것 :Managed C++에서 typeof (int)를 어떻게 수행합니까?

대해서 typeof (int)를

하지만 내가 어떻게 그 관리 C++에서?

감사합니다. C++/CLI에서

+2

나중에 참조 할 수 있습니다 ... 관리되는 언어에 해당하는 것을 보려면 C#에서 코드를 간단하게 작성하고 Redgate Reflector를 사용하여 CLR 언어로 분산시킬 수 있습니다. –

답변

54

, use the typeid keyword.

예컨대 기존의 "관리되는 C++ 확장"구문에서

Type ^t = Int32::typeid; 

, 당신은 __typeof(Int32)을 사용 싶지만, 언어의 전체 버전은 심각하게되지 않으며 당신은 C++/CLI를 사용한다.

+0

키워드 int는 단지 aliasto System입니다. Int32 –

+0

잘못 되었기 때문에 만들어진 편집을 롤백했습니다. C++에서와 같이 (C++에서와 같이) 타입에 포함 된 것들은'.' 대신에 (C#에서 사용 된)'::'를 사용하여 접근됩니다. 이전 C++/CLI 컴파일러 버전은 C# 구문을 잘못 허용했습니다. Visual Studio 2010 베타 1이이를 차단 한 것으로 보입니다. –

+0

사실 2008 SP1은 그것을 허용하지 않습니다 ... 왜 그런 식으로 답을 수정합니까?! –

관련 문제