Home » Swift2.0

Swift2.0

defer 문 이해하기

Defer in Swift 2.0

Swift 2.0 에서 새롭게 등장한 defer 구문을 살펴보자. defer문은 다음 코드를 현재 스코프를 벗어날 때 실행한다는 예약이다. 무슨 말인고 하니,

<br />func doit() {
    defer{ print("4")}
    print("2")
    print("3")
}
print("1")
doit()
print("5")

위 코드의 실행 결과는 순서대로 1 -> 2 -> 3 -> 4 -> 5이다. defer는 이후에 받는 블럭을 당장 실행하지 않고 현재 블럭 범위가 종료될 때 실행한다. 이는 단순히 실행의 우선순위를 변경하는 것외에 매우 요긴하게 쓰일 수 있다. 더 보기 »defer 문 이해하기

guard 문법(Swift 2.0)

guard

Swift 2.0에서 새로운 guard 문이 추가되었다. 이는 특정 조건을 만족하지 않을 때 지정한 블럭을 수행하는 것이며, 따라서 필연적으로 else 를 써야 한다. 기본적인 문법은 다음과 같다.

guard x > 0 else { return }

이 문법은 사실 본질적으로더 보기 »guard 문법(Swift 2.0)