[Swift] defer

defer

  1. 작성된 위치와 순서에 상관없이 함수가 종료되기 직전에 호출된다
  2. defer블록을 읽기전에 함수가 종료되면 defer블록은 실행되지 않는다.
  3. defer 블록은 여러번 사용가능하다. defer문을 만나면 순차적으로 스택에 저장되고 스코프 종료 후 하나씩 pop해서 실행하기에 마지막 defer문 부터 역순으로 실행된다
  4. defer 블록은 중첩으로도 사용 가능하다. 이때 순서는 바깥쪽 defer문으로부터 안쪽 defer문의 순서로 실행된다

카테고리:

업데이트:

댓글남기기