【发布时间】:2015-05-19 15:49:30
【问题描述】:
我有以下场景:
class Addition{
public Addition(int a){ a=5; }
public static int add(int a,int b) {return a+b; }
}
我正在通过以下方式调用 add in another class:
string s="add";
typeof(Addition).GetMethod(s).Invoke(null, new object[] {10,12}) //this returns 22
我需要一种类似于上面的反射语句的方式来使用Addition(int a)创建一个Addition类型的新对象
所以我有字符串s= "Addition",我想使用反射创建一个新对象。
这可能吗?
【问题讨论】:
-
为什么要使用反射?反射会带来性能损失,从长远来看会产生维护问题......
-
@Patrick,很多情况下只要达到用户目标,性能损失就可以忽略。
标签: c# reflection constructor