
Generator::current 속성은 Generator 타입의 현재 값을 반환합니다. Generator 타입은 반복 가능한 시퀀스를 생성하는 데 사용되는 프로토콜입니다.
Generator::current 속성이 nil을 반환하는 경우, Generator 타입이 완료되었거나, Generator 타입이 아직 초기화되지 않은 경우입니다.
Generator::current 속성을 사용할 때는, Generator 타입이 완료되지 않았을 때만 사용해야 합니다. 만약 Generator 타입이 완료되었을 때 사용하면, 런타임 에러가 발생할 수 있습니다.
다음은 Generator::current 속성을 사용하는 예제입니다.
#hostingforum.kr
swift
func fibonacci() -> Generator {
var a = 0
var b = 1
return Generator {
if a <= b {
defer { a = b; b += a }
return a
} else {
return nil
}
}
}
let generator = fibonacci()
print(generator.current) // 0
print(generator.next()) // 1
print(generator.next()) // 1
print(generator.next()) // 2
이 예제에서는 Generator 타입을 사용하여 피보나치 수열을 생성합니다. Generator::current 속성을 사용하여 현재 값을 반환하고, Generator.next() 메서드를 사용하여 다음 값을 반환합니다.
2025-07-11 09:22