迭代列表和转发列表的最有效方法

时间:2015-02-27 03:24:01

标签: c++

在关于我的类的工作室的问题之一中,它要求为2个不同的对象类型(列表,转发列表)创建迭代器,这些对象类型指向超出MOST EFFICIENT MANNER中每种类型的开头的2。我不确定什么是最有效的方式。
显然我可以使用for循环来移动迭代器两次,但我不确定这是你在寻找什么。我也试过使用下一个函数,但似乎没有用。有比for循环更好的方法吗?

auto it = list.begin()
for (int i = 0; i< 2; i++){
 ++iterator;
}

非常感谢您的时间!

1 个答案:

答案 0 :(得分:1)

效率 - 对于这种情况 - 可以意味着有效使用内存,cpu周期,不重复工作等等。

练习最重要的方面是对将要使用的代码有一些了解。这不仅仅意味着您编写的代码,而是您使用的库中包含的代码。一旦熟悉了所有使用的代码,就可以开始分析它了。

一些想法:

  • 阅读有关用于列表的迭代器和集合库。另请阅读他们的表现&#39;开始()&#39;和&#39; next()&#39;。如果没有关于此的文章,您可能需要查看源代码。

  • 可以将int循环索引换成一个字节吗? (分裂头发)。