类似枚举的数据结构或替代方案

时间:2011-10-08 09:50:08

标签: class enums

我有一个设计问题已被证明对我目前的设计技能太过分了。 我希望我的请求对于我在这些论坛中看到的那些非常熟练的人来说不是太琐碎或太愚蠢。

基本上,这就是我需要的: 能够通过另一个类静态或常量声明来引用特定的类实例化(希望它对你来说和对我一样有意义,哈哈)。 “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',它基本上封装了我在声明阶段预定义的另一个数据结构。

这是因为我设计了几个数据预设,我需要像enum那样与它们进行交互(获取它们的数字,它们的描述,并基本上将它们与预定义值相关联)。

如果您有解决方案,或者甚至是类似的选择,请告诉我。

0 个答案:

没有答案