日期:2014-05-19  浏览次数:20951 次

问关于type
比如
in32和gettype(int32)有什么不同?
gettype(int32)返回的type类型不是具体的int32类型么??
要详细解释,谢谢

------解决方案--------------------
gettype 系统没有整个函数吧
int32也没有 只有int和Int32,他们是一样的

Int32是一个struct,取其Type:

Type type = typeof(int);

Type type = Type.GetType( "System.Int32 ");

int i = 1;

Type type = i.GetType();

三种写法一致。


----------------------
vs2005引入了范型。
对于一个不确定的int,(例如可能是Int16,32,64
可以直接定义 int? i = 6;



------解决方案--------------------
--不考虑值类型和引用类型的区别

int i = 0;//类,类实例,值
string str=i.ToString();//某个类的实例的方法,无参数,返回一个string类型


System.Type t = typeof(int); //类,类实例,值
System.Reflection.MethodInfo m=
t.GetMethod( "ToString ",new Type[]{});//类,类实例,值
object obj=m.Invoke(i, null);//某个类的实例的方法,无参数,返回一个object类型

上面两段的运行结果应该相当