fork(2) download
  1. using System;
  2.  
  3. class Triangle
  4. {
  5. public struct NeverCreateMe {}
  6.  
  7. public Triangle(double side1, double side2, double side3)
  8. {
  9. Console.WriteLine("3 sides");
  10. }
  11.  
  12. public Triangle(double side1, double side2, NeverCreateMe ignored = default(NeverCreateMe), double angle = 0)
  13. {
  14. Console.WriteLine("2 sides and 1 angle");
  15. }
  16.  
  17. public Triangle(double side1, NeverCreateMe ignored = default(NeverCreateMe), double angle1 = 0, double angle2 = 0)
  18. {
  19. Console.WriteLine("1 side and 2 angles");
  20. }
  21. }
  22.  
  23. public class Test
  24. {
  25. public static void Main()
  26. {
  27. var a = new Triangle(1.0, 2.0, 3.0);
  28. var b = new Triangle(1.0, 2.0, angle: 3.0);
  29. var c = new Triangle(1.0, angle1: 2.0, angle2: 3.0);
  30. }
  31. }
Success #stdin #stdout 0.01s 29664KB
stdin
Standard input is empty
stdout
3 sides
2 sides and 1 angle
1 side and 2 angles