일반 큐를 래핑하여 내 자신의 큐를 구현하는 동안 Queue는 ICollection을 구현하는 것으로 나타났습니다. 일반 Queue.CopyTo의 방법 서명무엇 큐 <T> 실제로 구현합니까
public void CopyTo(
T[] array,
int arrayIndex)
이것은 ICollection에의 일반 버전의 서명과 동일하다 반면 그러나 ICollection.CopyTo의 메소드 서명
void CopyTo(
Array array,
int index)
을 다음과 같다 .에게 복사. 일반적인 대기열은 일반 ICollection을 구현하지 않는 대신 표준 ICollection을 구현한다는 사실에서 혼란스러워합니다. 그럼 여기서 정확히 무슨 일이 일어나고있는거야?
public class Queue<T> : IEnumerable<T>, ICollection, IEnumerable
그래서는 일반적인IEnumerable<T>
인터페이스를 구현하지만, 제네릭이 아닌ICollection
인터페이스 :
가능한 복제본 [C# Stack ICllection을 구현하지만 ICollection의 메서드가 있음] (http://stackoverflow.com/questions/10589803/c-sharp-stack-implements-icollection-but-has-methods-from- icollectiont) –
nawfal