一个很长的标题,但我希望它具体.标题确实是个问题.即使InvokeMember调用的方法有一个out参数,并且为该参数赋值,我也无法获取该值.这是我最初使用的代码:
string parameter = ""; int result = Convert.ToInt32(typeof(Ability).InvokeMember(selectedMove,BindingFlags.InvokeMethod | BindingFlags.Public | BindingFlags.Static,null,new object[] { parameter }));
我改变了这个,现在它按预期工作但我不知道为什么:
object[] args = new object[1]; //necessary to retrieve ref/out parameter int result = Convert.ToInt32(typeof(Ability).InvokeMember(selectedMove,args));