2015-01-21 2 views
0

내가 스위프트 GeneratorType 문서에서 this language보고 그리고 난 그것을 이해하기 힘든 시간을 보내고 있습니다 :스위프트에서 멀티 패스 시퀀스 란 무엇입니까?

하나의 시퀀스를 통해 다수의 발전기 (또는 용 루프에서) 사용하는 모든 코드가 있어야한다 특정 순서가 알려져 있거나 CollectionType으로 제한되어 있기 때문에 특정 시퀀스가 ​​다중 패스라는 정적 지식. 또한 생성자는 복사하는 대신 시퀀스의 generate() 메서드에 대한 별도의 호출을 통해 얻어야합니다.

시퀀스가 ​​"다중 패스"라는 것은 무엇을 의미합니까? 이 언어는 매우 중요해 보이지만 좋은 설명을 찾을 수 없습니다. 예를 들어, "다중 패스 컴파일러"의 개념을 이해하지만 개념이 비슷하거나 관련이 있는지 확신 할 수 없습니다. ...

또한이 게시물에 대한 다른 질문을 검색했습니다. I는 C++ 환경에서 다음과 같은 성명을 this one을 발견 :

자신의 반복자와 그렇지 않은 복사 알고리즘의 차이는 전자는 "멀티"알고리즘을 되나, 그 반복자 타입을 필요로한다는 것이다 ForwardIterator를 만족시키는 반면, 후자는 단일 패스이며 InputIterator 만 필요합니다.

그러나 그 의미는 나에게 분명하지 않으며, 개념이 Swift에서도 동일하지는 않습니다.

나보다 현명한 사람들에게서 통찰력을 얻으실 수 있으면 감사하겠습니다.

답변

1

A "멀티 패스"시퀀스 루프 또는 발전기의 수를 사용하여 대해 ... 통해 여러 번에 걸쳐 반복 될 수있는 한 (생성을 통해 구축())

이다

텍스트는 당신이 순서 당신이

  • 유형을 알고 있기 때문에 멀티 패스 (당신이 설계 아마도 클래스) 또는
  • CollectionType에 부합 알고 아는 것입니다 설명합니다. (예 : 세트 및 배열)
+0

고맙습니다 ... 나는 다중 패스가 아닌 시퀀스를 시각화하는 데 어려움을 겪고 있습니다. 한 번만 반복 할 수있는 시퀀스의 예가 무엇입니까? 처음부터 다시 시작하지 못하게하는 것은 무엇입니까? –

+2

네트워크에서 수신하는 토큰 스트림 일 수 있습니까? 그것이 있어야하는 것은 각각의 새로운 아이템이 비 결정적인 방식으로 이전 아이템으로부터 생성되는 것입니다 ... – nielsbot

+0

다시 한번 감사드립니다. 스트림을 시퀀스로 생각하지 않았기 때문에 꽤 도움이되었습니다. –

관련 문제