C#可以用类作为参数吗 ( 积分: 100 )

  • 主题发起人 主题发起人 憨憨
  • 开始时间 开始时间

憨憨

Unregistered / Unconfirmed
GUEST, unregistred user!
我想让一个方法接收一个类而不是对象作为参数,在该方法中再进行实例化
 
可以,用托管;
 
class TA
{
public
static void ShowTypeName(System.Type AType)
{
System.Windows.Forms.MessageBox.Show(AType.FullName);
}
}
使用的时候TA.ShowTypeName(System.Type.GetType("System.String"));
 
刚开始用C#,许多东西搞不清楚,请各位大侠多多帮忙
to dingbaosheng:
不知道我理解得对不对,托管大体上相当于 D 中的过程参数,但我想要的是 Class of Txxxx,因为我要根据传来的不同类来创建对象并调用其中的多个方法,用托管的话是不是会比较麻烦。
to wr960204:
我也是这样设的参数,但我用 c = AType.Assembly.CreateInstance(AType.Name),得到的 c 却是 null ,不知道问题在哪里,或者说该如何动态的创建对象,还望指点
另外,BDS C# 是不是不支持泛型啊
 
class TA
{
public
static void ShowTypeName(System.Type AType)
{

if (AType.Assembly.CreateInstance(AType.FullName) !=null)
{
System.Windows.Forms.MessageBox.Show("创建成功!!");
}
}
}
使用的时候
TA.ShowTypeName(System.Type.GetType("WindowsApplication2.Form1"));
不要用AType.Name而是要用AType.FullName创建.Name不包含命名空间.
再一个好像值类型不行的,只能是应用类型,也就是Class类型才行
 
是这个问题,谢谢各位
 
后退
顶部