System.StackOverflowException - C#

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

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

class Program
    {
        
        class Man         
        {
            public int age { get; set; }
            public string gender
            {
                get { return gender; }
                set { gender = value + " существо"; }
            }
            public string name { get; set; }
     
            public Man(int _age, string _gender, string _name)
            {
                age = _age;
                gender = _gender;
                name = _name;
            }
            public Man(int _age, string _gender) : this(_age, _gender, "") { }          
    }
       
        static void Main(string[] args)
        {
            Man lex = new Man(18, "М");
            Console.WriteLine("Man age is: {0}, gender is {1} and his name {2}", lex.age, lex.gender, lex.name);
            lex.name = "Lex";
            Console.WriteLine("Man age is: {0}, gender is {1} and his name {2}", lex.age, lex.gender, lex.name);
            Console.ReadLine();
 
        }           
    }
Значение выходит "М существо существо существо существо..." ЧТо-то не пойму где я рекурсию вызвал

Решение задачи: «System.StackOverflowException»

textual
Листинг программы
public string gender
{
    get { return gender; }
    set { gender = value + " существо"; }
}

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


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

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

12   голосов , оценка 4.333 из 5