티스토리 뷰

반응형

안녕하세요 도미닉입니다.

 

콜 바이 벨류, 콜 바이 레퍼런스 많이 들어보셨을 겁니다.

 

스위프트에서 inout 을 활용하여 포인터에 직접 접근할 수 있습니다.

 

위에 소스는 inout 을 통해 직접 포인터에 접근하여 두 변수의 값을 바꾸는 예제입니다.

 

함수에서 서로 값이 바뀐다면 그 값은 복사되어 사용된 값이므로 원본에는 영향을 주지 않습니다.

 

스위프트에서는 함수에 매개변수로 들어온 값을 수정할 수 조차 없습니다.

 

위와 같이 inout 을 통해 매개변수에 접근한다면 조금 더 효율적인 프로그래밍이 가능합니다.

 

직접 포인터에 접근하는 것은 자유도가 있지만 예상치 못하게 원본에 대한 수정이나 훼손이 가능하므로 주의하여야 합니다.

 

조금 더 안전한 메소드는 아래와 같습니다.

 

 

 

이상으로 inout 에 대해서 알아봤습니다.

 

감사합니다.

 

참고 : https://hojunpark.wordpress.com/2015/01/27/스위프트-함수의-재주꾼-개쿨한-inout-파라미터-이해하/

반응형

'IT > Swift' 카테고리의 다른 글

스위프트에서 열거형을 사용하는 3가지 방법 - 번역글  (0) 2020.10.22
스위프트 열거형  (0) 2020.10.20
Swift 함수형 프로그래밍  (0) 2019.05.10
Swift Closure  (0) 2019.05.10
Swift Enum  (0) 2019.05.09
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함