enum-подобное структурирование данных или альтернативы - PullRequest
0 голосов
/ 08 октября 2011

У меня проблема с дизайном, которая оказалась слишком большой для моих нынешних дизайнерских навыков. Я надеюсь, что моя просьба не является слишком тривиальной или слишком глупой для невероятно квалифицированных людей, которых я видел на этих форумах с течением времени.

По сути, это то, что мне нужно: чтобы иметь возможность ссылаться на конкретный экземпляр класса с помощью статического или константного объявления другого класса (надеюсь, это имеет для вас такой же смысл, как и для меня, ха). Поведение 'enum' было бы особенно полезно из-за его 'легкости доступа' и для его стандартных методов.

//simple class with a constructor
public class myclass {
  int myint = 0;
  string mystring = "";

  public myclass(int localint, string localstring) {
    myint = localint;
    mystring = localstring;

  }
}

//the core of the issue.
public enum myenum : myclass {
  enum1 = new myclass(9,"abr"),
  enum2 = new myclass(99,"acad"),
  enum3 = new myclass(999,"abra")
}

Так что в другом месте, когда мне нужно 'abra', вместо того, чтобы вручную создавать его экземпляр и иметь бесчисленные дубликаты по всему коду, я просто

myenum mylocalenum;
mylocalenum = enum3; //no mistake, the underlying class variables are predefined

Цель состоит в том, чтобы иметь выбираемый, предварительно установленный «myenum», который в основном инкапсулирует другую структуру данных, которую я предопределил на этапе объявления.

Это потому, что у меня есть несколько предустановок данных, и мне нужно взаимодействовать с ними как с перечислением (получить их число, их описания и в основном связать их с предопределенными значениями).

Если у вас есть решение или даже похожая альтернатива, пожалуйста, дайте мне знать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...