Сосиска методов в одном классе - C#

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

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

Добрый день. Возможно проще сделать сосиску методов но в одном классе. Дело в том что есть 100 методов для управление роботом. Сейчас они записаны так: Robot_Ruka_Verx() Rotov_Ruka_Vniz() Rotot_Noga_Verx() Rotov_Noga_Vniz() Но хочется сделать так, но проще не плодя классы внутри классов? Robot.Ruka.Verx() Rotov.Ruka.Vniz() Rotot.Noga.Verx() Rotot.Noga.Vniz() Сделать классы в классе я умею (Но долго и много писанины), но вдруг студия упростила данную задачи и давно ввела синтаксический сахар о котором я не знаю? Может кто то что то знает? другово варианта нету как делать класс в классе? Пример того что я сделал:
        class C_Robot
        {
            public C_Ruka Ruka = new C_Ruka();
            public C_Noga Noga = new C_Noga();
 
            public class C_Ruka
            {
                public void Verx() { }
                public void Vniz() { }
            }
 
            public class C_Noga
            {
                public void Verx() { }
                public void Vniz() { }
            }
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            C_Robot Robot = new C_Robot();
 
            Robot.Ruka.Verx();
            Robot.Ruka.Vniz();
 
            Robot.Noga.Verx();
            Robot.Noga.Vniz();
        }

Решение задачи: «Сосиска методов в одном классе»

textual
Листинг программы
public enum RobotsLimb
    {
        LeftHand = 0,
        RightHand = 1,
        LeftLeg = 2,
        RightLeg = 3
    }
    public class C_Robots
    {
/*тут всё что нужно для кода робота*/
        public void Move(RobotsLimb limb)
        {
            switch (limb)
            {
                case RobotsLimb.LeftLeg://двигаем левую ногу
/*код движения*/
                    break;
                case RobotsLimb.RightLeg:// двигаем правую ногу
/*код движения*/
                    break;
                case RobotsLimb.LeftHand://двигаем левую руку
/*код движения*/
                    break;
                case RobotsLimb.RightHand: // двигаем правую руку
/*код движения*/
                    break;
                    default: // пришло что-то неизвестное можно выдать или ошибку, или просто ничего не делать
                        break;
            }
        }
    }

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


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

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

7   голосов , оценка 4.286 из 5
Похожие ответы