fork download
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. class MyBaseClass {}
  6. class DerivedClassOne : MyBaseClass {}
  7. class DerivedClassTwo : MyBaseClass {}
  8.  
  9. public class Test
  10. {
  11. public enum Option {
  12. Option1,
  13. Option2,
  14. Option3
  15. }
  16. private static Dictionary<Option, Func<MyBaseClass>> OptionMapping
  17. = new Dictionary<Option, Func<MyBaseClass>> {
  18. { Option.Option1, () => new DerivedClassOne() },
  19. { Option.Option2, () => new DerivedClassTwo() },
  20. { Option.Option3, () => OptionMapping[Option.Option2]() }
  21. };
  22. public static void Main()
  23. {
  24. // your code goes here
  25. }
  26. }
Success #stdin #stdout 0.01s 33616KB
stdin
Standard input is empty
stdout
Standard output is empty