从字符串属性中查找类对象

时间:2013-05-29 09:23:06

标签: c++ class key

假设我有一个简单的类,其定义如下

class objectA {
 public:
  objectA() {} objectA(std::string aName, int aValue) : name(aName), value(aValue) {}
  std::string name;
  int value;
}

我们定义了两个对象

objectA A("myObjectA", 1);
objectA B("myObjectB", 2);

如何在编译时访问通过键查找(例如

)访问其中一个对象
get("myObjectA")

也许还可以在之后设置值

get("myObjectA")->setValue("3") //sets the int value new

1 个答案:

答案 0 :(得分:0)

我认为你可以将静态STD :: map作为ObjectA类的私有成员。并且还有一个静态Getter来根据键值查询此映射。

还有一件事在你的CTOR中填充这个地图,这将确保你不会丢失任何对象来注册这个静态地图。