首页 > 解决方案 > 我用什么来获得更好的性能:成对向量还是二维数组?

问题描述

我应该使用什么来获得更好的性能:vector<pair<string, string>>或者string myArray[10][2](10 是示例编号,2 因为我需要存储 2 个字符串),或者我应该坚持一些更好的方法?

标签: c++

解决方案


为了获得更好的性能,您应该使用速度更快的那个。

如果两者都没有明显更快,那么您应该使用更方便的那个。

您可以通过测量找出程序中哪个更快。它可能是任何一种,这取决于你如何使用它们。

还是我应该坚持一些更好的方法?

在某些情况下,将所有字符串的内存分配在一个大块中而不是使用单独的std::string对象可能会更有效。


PSstd::pair很少是一个好的选择。通常,最好使用自定义类,您可以在其中为两个子对象提供描述性名称。


推荐阅读