Advertisement
Guest User

Untitled

a guest
Feb 19th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.39 KB | None | 0 0
  1. ```c#
  2. void Main()
  3. {
  4.  
  5. //ok
  6. var ComplexUser = new ComplexUser();
  7. var complex = ComplexUser.complex;
  8. complex.Re = 1;
  9. ComplexUser.Dump();
  10.  
  11. //still ok
  12. var ComplexUser2 = new ComplexUser();
  13. ComplexUser2.complex.Re = 1;
  14. ComplexUser2.Dump();
  15. }
  16.  
  17. class ComplexUser
  18. {
  19. private Complex _complex = new Complex();
  20. public Complex complex { get { return _complex; } }
  21. }
  22.  
  23. class Complex
  24. {
  25. private double re;
  26. private double im;
  27.  
  28. public double Re
  29. {
  30. set { this.re = value; }
  31. get { return this.re; }
  32. }
  33. public double Im
  34. {
  35. set { this.im = value; }
  36. get { return this.im; }
  37. }
  38.  
  39. public double Abs
  40. {
  41. get { return Math.Sqrt(re * re + im * im); }
  42. }
  43. }
  44. ```
  45.  
  46. ```c#
  47. void Main()
  48. {
  49.  
  50. //ok
  51. var ComplexUser = new ComplexUser();
  52. var complex = ComplexUser.complex;
  53. complex.Re = 1;
  54. ComplexUser.Dump();
  55.  
  56. // error
  57. // CS1612 Cannot modify the return value of 'UserQuery.ComplexUser.complex' because it is not a variable
  58. var ComplexUser2 = new ComplexUser();
  59. ComplexUser2.complex.Re = 1;
  60. ComplexUser2.Dump();
  61. }
  62.  
  63. struct ComplexUser
  64. {
  65. private Complex _complex = new Complex();
  66. public Complex complex { get { return _complex; } }
  67. }
  68.  
  69. class Complex
  70. {
  71. private double re;
  72. private double im;
  73.  
  74. public double Re
  75. {
  76. set { this.re = value; }
  77. get { return this.re; }
  78. }
  79. public double Im
  80. {
  81. set { this.im = value; }
  82. get { return this.im; }
  83. }
  84.  
  85. public double Abs
  86. {
  87. get { return Math.Sqrt(re * re + im * im); }
  88. }
  89. }
  90. ```
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement