c ++ 11映射对象的ptrs,快速/缓存搜索

时间:2016-09-16 21:43:36

标签: c++ c++11 dictionary caching

我有一个类来映射许多对象:

struct array:
    String       name;
    Parameter*   parameter;
    Slider*      slider;
    Label*       label;

该课程有以下方法:

 int getIndex (Label* label);
 int getIndex (Parameter* param);
 int getIndex (Slider* slider);
 int getIndex (String* name);

我用这种方式:

int index = map.getIndex (&slider);
Parameter* param = map.getParameter (index);

//------- or:

int index = map.getIndex (&label);
Slider* slider = map.getSlider (index);

问题是getIndex(ptr)有一个for循环,它迭代" struct array"中的所有元素。并通过" structArray [i] .slider == sliderPtr"

进行比较

避免走完整个阵列的任何建议?缓存系统? 谢谢!

0 个答案:

没有答案