for和foreach循环之间的主要区别是什么?
在哪些场景中我们可以使用for而不是foreach,反之亦然.
是否可以用简单的程序来展示?
两者对我来说都是一样的.我无法区分它们.
有没有人知道是否有特定原因或设计决定不在C#中包含反向调查员?如果有一个与C++ reverse_iterator相同的东西,就像Enumerator相当于C++ 那样会很好iterator.可以反向迭代的集合只会实现像IReverseEnumerable这样的东西,可以做类似的事情:
List<int>.ReverseEnumerator ritr = collection.GetReverseEnumerator();
while(rtir.MoveNext())
{
 // do stuff
}
这样,您就可以以相同的方式迭代Lists和LinkedLists,而不是使用索引器为另一个链接和之前的链接,从而实现更好的抽象
我有一些列表需要迭代,有时从头到尾,有时从头到尾。此列表从未修改过,我将对其进行多次遍历。当我要从头到尾进行迭代时,我想避免在O(n)中反转列表的操作。
是否有某种允许的数据结构?
我以为C#中的(双重)LinkedList实现允许这种行为很简单(通过保留列表开头的内部引用),但是我不认为它是通过这种方式实现的。如果我错了,可以提供一个链接吗?