2014-10-22 3 views
8

Apple에서 제공 한 빠른 책에 코드 스 니펫이 있습니다. xcode 놀이터에서 입력했지만 "연산자는 알려진 이진 연산자가 아닙니다"및 "확인되지 않은 식별자 사용"오류가 표시됩니다. 코드는 다음과 같습니다.for 루프와 함께 ".."사용

Xcode Playground code 이 책에 따르면 for 루프는 ".."연산자를 사용하여 상위 값을 생략하는 범위를 만들 수 있습니다. 그러나 오류가 표시됩니다. ".."을 ".."로 변경하면 오류를 수정하는 것으로 보입니다. 하지만 왜 ".."는 작동하지 않습니까?

+0

이 책의 최신 버전이 필요합니다. 보유하고있는 버전은 Swift의 베타 버전입니다. – Fogmeister

+0

감사합니다. Fogmeister. –

답변

16

빠른 책이 만료되었습니다.

여기 있습니다. 반 폐쇄 범위의 현재 버전은 여기에 엑스 코드 (7) 지금 그것을 할 방법은 (원래의 질문이 특정 문제에 대한 구글 검색에서 매우 표시)하지 0..3https://developer.apple.com/library/ios/documentation/swift/conceptual/Swift_Programming_Language/BasicOperators.html

+0

한 가지 더, 이러한 유형의 문제가 더 많이 나타날 것입니까? 그들이 느낀다면 그들은 신속하게 구문을 바꿀 것입니까? –

+0

최신 버전 (1.1)에서는 init의 옵션 반환 기능을 추가했습니다. 그것은 심각한 버그 였고이를 수정하기 위해 코드를 변경해야했습니다. 귀하의 질문에 대한 대답, 아마, 네. 스위프트는 여전히 매우 어린 언어입니다. 코드와 현재 버전 간의 변경 사항은 버전 1.0 이전에 완료되었으므로 예상되었습니다. 지금부터는 변경 사항이 줄어들지 만 변경 사항이 없다는 것은 아닙니다. – Fogmeister

+0

이전 버전의 빠른 ibook을 읽고 있었고 Xcode도 6.0.1이었습니다. 둘 다 업데이트했습니다. 정보 및 빠른 응답 Fogmeister 주셔서 감사합니다. –

1

상황이 지금 스위프트 2에서 다른 0..<3입니다 :

for i in 1 ..< Process.argc { 
    let index = Int(i); 

    if let arg = String.fromCString(Process.unsafeArgv[index]) { 
     switch arg { 
     case "-whatever": 
      // do something 

     default: 
      break 
     } 
    } 
} 
+0

아, 죄송합니다. 원래 ".."문제 때문에 여기에 왔지만 명령 줄 인수를 처리하려고했습니다. 내 게시 된 솔루션은 분명히 필요한 것 이상을 포함하고 있지만 다칠 수는 없다고 생각합니다. –

관련 문제