我需要创建一种非常快速的方法来获取对象列表,我认为一个对象数组的数组可以工作。也许有不同的方法可以做到这一点,所以请随意推荐一个替代实现。
我有一组对象需要按指定值进行分组。例如,我有一组需要通过数字10访问的对象。所以我会找到使用数字10的对象组,然后迭代每个对象以对每个对象执行任务。
10 - Object1, Object2, Object3
11 - Object4, Object5
我需要非常快速地访问这些对象,这就是为什么我在想一个对象数组的数组。我已经研究了矢量和地图,但并不完全理解它们。
我在使用g ++编译器的raspberry pi上使用c ++。
请让我知道你的想法,我非常感谢你。
答案 0 :(得分:1)
使用std::set
作为对象组。
使用std::map
键入这些组。
这应该有效:
std::map<int, std::set<Object>> objects;
答案 1 :(得分:0)
对象数组数组通常称为矩阵。您可以将矩阵想象为网格。这将是访问所有对象的最快速,最基本的方法。要创建一个矩阵,请在下面声明它。
int matrix[10][10];
现在用对象
填充矩阵的每个点for(int row = 0; row<10;row++){
for(int column = 0; column<10;column++){
matrix[row][column] = Obj();
}
}
现在矩阵已填满,您可以通过简单的快速循环访问组5
for(int i = 0; i<matrix[].length;i++){
matrix[4] = _________
}
这将是尝试你正在做的事情的最快和最简单的方法。我希望这会有所帮助。