如何在c ++中管理频繁变化的向量?

时间:2016-09-22 19:51:06

标签: c++ vector openframeworks

我正在尝试创建一个包含c ++中一系列路径的向量。我无法理解如何以允许我稍后正确删除它们的方式添加它们。

我有一个轮廓查找器,它为找到的每个轮廓返回一个路径。它不断寻找新的轮廓,但它说它找到了3个轮廓。我想为返回的每个路径创建和修改3个额外的偏移路径,所以我知道我的矢量将是9个元素。

如何将每个路径和偏移量添加到向量中,然后在“根”路径消失时删除路径和偏移量?如果我在飞行中更改偏移量会怎么样?

我有一个想法是创建一个多维向量

vector< vector<ofPolyline> >

我想,这将让我描绘从轮廓跟踪器返回的每条路径,并在其中存储所有相关的偏移路径。但这是不正确的吗?

1 个答案:

答案 0 :(得分:0)

Hashtable数据结构适合您..

o(1)搜索/查找是它的专长。 您可以轻松地在互联网上找到它的实现

这是一个例子 http://pumpkinprogrammer.com/2014/06/21/c-tutorial-intro-to-hash-tables/

您可以使用STL容器,例如multimap或unordered_multimap(C ++ 11以上版本)。