fork(1) download
  1. using System;
  2.  
  3. public class Test
  4. {
  5. private static void Main(string[] args)
  6. {
  7.  
  8. double k = new MyClass()+new MyClass();
  9.  
  10. Console.WriteLine(k);
  11.  
  12. double k2 = new MyClass2()+new MyClass2();
  13.  
  14. Console.WriteLine(k2);
  15.  
  16. double k3 = new MyClass3()+new MyClass3();
  17.  
  18. Console.WriteLine(k3);
  19. }
  20.  
  21. public class MyClass
  22. {
  23. public static implicit operator int(MyClass m)
  24. {
  25. return 5;
  26. }
  27.  
  28. public static implicit operator long(MyClass m)
  29. {
  30. return 100;
  31. }
  32.  
  33. public static implicit operator float(MyClass m)
  34. {
  35. return 3.14f;
  36. }
  37.  
  38. public static implicit operator double(MyClass m)
  39. {
  40. return 2.71d;
  41. }
  42. }
  43.  
  44. public class MyClass2
  45. {
  46.  
  47. public static implicit operator long(MyClass2 m)
  48. {
  49. return 100;
  50. }
  51.  
  52. public static implicit operator float(MyClass2 m)
  53. {
  54. return 3.14f;
  55. }
  56.  
  57. public static implicit operator double(MyClass2 m)
  58. {
  59. return 2.71d;
  60. }
  61. }
  62. public class MyClass3
  63. {
  64.  
  65.  
  66. public static implicit operator float(MyClass3 m)
  67. {
  68. return 3.14f;
  69. }
  70.  
  71. public static implicit operator double(MyClass3 m)
  72. {
  73. return 2.71d;
  74. }
  75. }
  76. }
Success #stdin #stdout 0.04s 23968KB
stdin
Standard input is empty
stdout
10
200
6.28000020980835