static void Main(string[] args) { BaseDemo demo = new BaseDemo(); // demo.TestConn(); // // demo.StringDemo(); demo.FriendDemo(); Console.WriteLine("Hello World!"); Console.ReadKey(true); }
private static void run(string demoStr) { try { var fullName = frontNamespace + "." + demoStr; Assembly assembly = Assembly.GetExecutingAssembly(); var type = assembly.GetType(fullName); BaseDemo demo = (BaseDemo)Activator.CreateInstance(type); demo.Run(); } catch (Exception ex) { Console.WriteLine("出现异常:" + ex.Message); } }
private IEnumerator randomLaunchCoroutine() { if (lastDemo != null) { lastDemo.enabled = false; } var randomIx = Random.Range(0, demos.Count); lastDemo = demos[randomIx]; lastDemo.enabled = true; yield return(new WaitForSeconds(DelaySec)); StartCoroutine(randomLaunchCoroutine()); }
private static void runAll() { try { Assembly assembly = Assembly.Load("QCrawler"); IEnumerable <TypeInfo> classInfos = assembly.DefinedTypes; Type interfaceType = classInfos.Where(t => t.FullName == frontNamespace + ".BaseDemo").FirstOrDefault(); IEnumerable <TypeInfo> demoInfos = classInfos.Where(t => t.Name.StartsWith("demo", StringComparison.CurrentCultureIgnoreCase) && t.ImplementedInterfaces.FirstOrDefault() == interfaceType); TypeInfo[] infos = demoInfos.ToArray(); foreach (var item in demoInfos) { BaseDemo demo = (BaseDemo)Activator.CreateInstance(item); demo.Run(); } } catch (Exception ex) { Console.WriteLine("出现异常:" + ex.Message); } }
public MainForm(BaseDemo demo) { InitializeComponent(); //SetStyle( // ControlStyles.AllPaintingInWmPaint | // ControlStyles.UserPaint | // ControlStyles.DoubleBuffer, true); this.KeyPreview = true; Controls.Add(ctl); ctl.Dock = DockStyle.Fill; Size = new Size(800, 800); Text = "IDx3DSharp Demos"; Shown += (sender, args) => { _handle = Handle; }; // BUILD SCENE _scene = new Scene(Width, Height); demo.PopulateScene(_scene); _initialized = true; }
public BaseDemo Get(BaseDemo demo) => demo;
public void TestShape() { ChildDemo demo = new ChildDemo(); ChildDemo demo1 = new ChildDemo(); BaseDemo demo2 = demo1.Get(demo); // 参数类型是协变的,方法的返回类型是抗变的 }