![]() |
1
5
多索引是解决问题的方法。见 there 有关如何使用它的详细信息。 |
![]() |
2
1
这里还有另一个替代方法,您选择哪种解决方案取决于您的需要。抓取sqllite将关于对象的数据存储在数据库中,并为它们运行查询。 |
![]() |
3
1
火枪,你不符合boost.multiindex名称的条件,而不是例如
|
![]() |
4
0
两个映射(一个以id为键,另一个以name为键)的方法对我来说似乎很好。它很容易实现,而且会很好地工作。 我看到其他答案推荐了Boost库。如果您已经在项目中使用了Boost,那么它可能是一个很好的解决方案。如果你不这样做,我不确定仅仅为了这个简单的案例,是否值得为你的项目增加推动力。 |
![]() |
5
-1
您可以将数据存储在std::vector中,并使用std::find算法查找项目。find算法接受不同的比较器,所以只需定义一个匹配ID的比较器和另一个匹配名称的比较器。 find算法比std::map和std::set的find方法慢,所以如果性能是一个大问题,那么在速度上最好不要使用交易空间,或者使用2个map,或者使用boost。 编辑, 只是想了一下。将数据存储在地图中,使用ID作为键,因为这是常见的情况。然后使用std::find算法和一个与不常见情况的名称匹配的谓词。这样可以减少(但不能消除)性能问题 |
![]() |
mrid · JavaScript关联数组行为异常 7 年前 |
![]() |
Podarce · 使用array_键访问嵌套关联数组(PHP) 7 年前 |
![]() |
logo3801 · 将等于的数组转换为关联数组 7 年前 |
![]() |
RhymeGuy · PHP-数字值作为关联数组中的键 7 年前 |
![]() |
Matthieu Raynaud de Fitte · 晶体关联阵列 7 年前 |
![]() |
hello world · 如何将FPDF总计添加到表格的最后一行? 7 年前 |
![]() |
kumarmo2 · 无法理解如何在java中定义列表列表[重复] 7 年前 |
|
user5299698 · 创建动态关联数组时出现问题 7 年前 |
![]() |
Constantine · 如何更改循环中的assoc数组值 7 年前 |