Ошибки: Конструктор не может вызвать сам себя. Неоднозначный вызов следующих методов или свойств - C#

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace exe1
  7. {
  8. //****************EXE1***********
  9. enum Material
  10. {
  11. StainlessSteel = 1,
  12. Aluminum,
  13. ReinforcedConcrete,
  14. Composite,
  15. Titanium
  16. }
  17. enum CrossSection
  18. {
  19. Ibeam = 1,
  20. Box,
  21. Zshaped,
  22. Cshaped
  23. }
  24. enum TestResult
  25. {
  26. Pass = 1,
  27. Faile
  28. }
  29. //***************Exe 3******************
  30. class StressTestCase
  31. {
  32. public Material girderMaterial;
  33. public CrossSection crossSection;
  34. public int lengthInMm, heightInMm, widthInMm;
  35. public StressTestCase( ){ }
  36. public StressTestCase(Material girder, CrossSection cross, int length, int heigth, int widht)
  37. : this(Material.Aluminum, CrossSection.Box, length, heigth, widht)
  38. public StressTestCase(Material girder, CrossSection cross, int length, int heigth, int widht)
  39. {
  40. girderMaterial = girder;
  41. crossSection = cross;
  42. lengthInMm = length;
  43. heightInMm = heigth;
  44. widthInMm = widht;
  45. }
  46.  
  47. public void ShowInfo()
  48. {
  49. Console.WriteLine("{0} {1} {2} {3} {4}",girderMaterial,crossSection,lengthInMm,heightInMm,widthInMm /*stressTestCase*/ );
  50. }
  51. }
  52.  
  53. class Program
  54. {
  55. static void Main()
  56. {
  57. }
  58. }
  59.  
  60. }

строчка 41 (StressTestCase) Конструктор не может визвать сам себя Строчка 42 (: this(Material.Aluminum, CrossSection.Box, length, heigth, widht)) неоднозначный вызов следующих методов или свойств

Решение задачи: «Ошибки: Конструктор не может вызвать сам себя. Неоднозначный вызов следующих методов или свойств»

textual
Листинг программы
  1. class A
  2. {
  3. public int x, y;
  4.  
  5. public A(int x) {
  6. this.x = x;
  7. }
  8. // тут сначала будет вызов подходящего конструктора, т.е A(int x) ибо x  в данном случае int.
  9. public A(int x, int y) : this(x)
  10. {
  11. this.y = y;
  12. }
  13. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы