# @autoclosure

[야우쓰] 1주차(6) 클로저 심화
클로저 심화 @autoclosure > * 파라미터로 전달된 일반 구문 & 함수를 클로저로 래핑하는 것* **즉 실제 클로저를 전달받지 않지만, 클로저처럼 사용이 가능해진다~! 다만 실제 클로저를 전달하는 것이 아니기 때문에 파라미터로 값을 넘기는 것처럼 ()를 통해 구문을 넘겨줄 수가 있음!** @escaping non-escaping Closure > 지금까지 우리가 봤던 건 모두 non-escaping closure였다 함수 내부에서 직접 실행하기 위해서만 사용한다. 따라서 i) 파라미터로 받은 클로저를 변수나 상수에 대입할 수 없고, ii) 중첩 함수에서 클로저를 사용할 경우, 중첩함수를 리턴할 수 없다. 함수의 실행 흐름을 탈출하지 않아, 함수가 종료되기 전에 무조건 실행되어야 한다. @escaping 즉 우리는 지금까지 클로저가 탈출하려면 바깥에 정의된 변수에 저장하는 방법 뿐이었다. **So, 함수 실행을 벗

Clousure
대망의 Closure다. 처음 공부할 때 정말 어려웠던 경험이 있다. 그 당시 생각을 하면서 찬찬히 적었으니 잘 이해가 되었으면 좋겠다. ARC의 개념은 후반 포스팅에 작성하였는데, 해당 단어가 궁금하다면 먼저 읽고 와도 상관없다. closure에서 다루는 대부분의 개념을 하나의 포스팅에서 다루고 싶어 불가피하게 흐름을 변경했다. 그럼 즐겁게 읽어주시길 바란다! Closure 개요 함수는 클로저에 포함된다. Global function 이름이 있음 value를 capture하지 않는 closure Nested function 이름이 있음 해당 함수를 포함하는 function의 value를 capture하는 closure closure 이름이 없음 둘러썬 context의 value를 capture Capture란? closure or nested function 코드 밖에서 사용