【发布时间】:2013-08-02 08:51:06
【问题描述】:
全部
我在 C++ STL 中使用向量来存储我的数据。我将它们传入和传出函数。然而,随着数据量的增长,程序越来越慢。因此,我将代码更新为“迭代器版本”。
我想要实现的是使用迭代器来传递、返回和迭代 STL 向量。
我现在可以使用一维向量进行操作,就像操作数组一样。但是,当涉及到二维向量时,我有点困惑。
谁能告诉我如何使用 STL 迭代器迭代 2D 向量的简单代码示例?
非常感谢。
问候
长
【问题讨论】:
-
别忘了你可以通过 const ref 传递东西以避免复制。你能发布一个二维向量的代码示例吗?它是一个向量
>? -
-1,您的问题要求提供示例代码; stackoverflow 上已经提供了该问题的示例代码
-
@doctorlove 非常感谢您的回复。现在我弄清楚了问题并让它正常运行。然而,又提出了一个问题:如何使用迭代器获取向量的大小?
-
不可能。但是你为什么还需要它呢?
-
@doctorlove 我使用它是为了提高我的代码的速度性能。我使用的数据块通常非常大。因此传递数据变量非常非常非常耗时。因此,我虽然通过迭代器可以帮助我。您提到了 const 参考。我可以知道这是什么想法吗?