2009-07-15 28 views
23

我正在开发一个项目,其中一部分使用托管C++。在托管的C++代码中,我创建了一个DataTable。在为数据表定义列时,我需要指定列的类型。在C#中,这将:如何在Managed C++中执行typeof(int)?

的typeof(INT)

,但我怎么做,在托管C++?

谢谢!

+2

供将来参考......如果您想查看托管语言等效项,您可以简单地在C#中编写代码,并使用Redgate Reflector将其分散到任何CLR语言中。 – 2009-07-15 19:48:18

回答

54

在C++/CLI中,use the typeid keyword.

例如,

Type ^t = Int32::typeid; 

在旧的“托管C++扩展”的语法,你会使用__typeof(Int32),但语言的是整个版本严重过时,你应该使用C++/CLI。

+0

请注意,关键字int只是一个别名System.Int32 – 2009-07-15 19:02:06