콘텐츠로 건너뛰기
Home » defer

defer

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 문 이해하기