问题:ClassA 的 init 如何写

解决方案 »

  1.   

    不好意思,是 ClassA  的 call  如何写
      

  2.   

    using System;
    using System.Reflection;public class ClassA
    {
       public static int call( int i,string strName )
       {
          // ÇëÎÊÕâÀï¸ù¾Ýi·´ÉäÏàÓ¦µÄ¾²Ì¬·½·¨£¨Èç1Ôò·´Éäm1£©,²¢ÇÒ·µ»ØÖµ
          string funcName = "m" + i;
          Type type = typeof(ClassA);
          MethodInfo mi = type.GetMethod(funcName,BindingFlags.Static|BindingFlags.NonPublic);
          return Convert.ToInt32(mi.Invoke(null,new object[]{strName}));
       }
       private static int m1( string strName )
       { return 1; }
       private static int m2( string strName )
       { return 2;}
      
       private static int m99( string strName )
       { return 99; }
    }class Test{
      static void Main(){
        Console.WriteLine(ClassA.call(1,"a"));
        Console.WriteLine(ClassA.call(2,"a"));
      }
    }
      

  3.   

    晕~~try:using System;
    using System.Reflection;public class ClassA
    {
       public static int call( int i,string strName )
       {      string funcName = "m" + i;
          Type type = typeof(ClassA);
          MethodInfo mi = type.GetMethod(funcName,BindingFlags.Static|BindingFlags.NonPublic);
          return Convert.ToInt32(mi.Invoke(null,new object[]{strName}));
       }
       private static int m1( string strName )
       { return 1; }
       private static int m2( string strName )
       { return 2;}
      
       private static int m99( string strName )
       { return 99; }
    }class Test{
      static void Main(){
        Console.WriteLine(ClassA.call(1,"a"));
        Console.WriteLine(ClassA.call(2,"a"));
      }
    }