728x90
반응형
함수
- 함수란 특정 작업을 수행하는 코드 블럭이다.
- 수행하기 위하여 데이터가 제공될 수 있으며, 함수를 호출한 코드에 작업한 결과를 반환할 수도 있다.
- 함수 정의부의 값을 매개변수(parameter), 호출시의 값은 아규먼트(argument)라고 부른다.
메서드(method)
- 특정 클래스, 구조체, 열거형 내의 함수
- 함수를 스위프트 클래스 내에 선언하면 메서드라고 부른다.
디폴트 매개변수 정의하기
- argument로 전달하는 값이 없는 경우, 디폴트 매개변수 값을 사용한다.
- 함수를 선언할 때 매개변수에 디폴트 값을 할당한다.
함수로부터 여러 개의 결과 반환하기
- 함수는 여러 결과 값들을 튜플로 감싸서 반환할 수 있다.
- 인치 단위의 수를 매개변수로 받아 야드, 센티미터, 미터로 반환하고 이 세 개의 값을 하나의 튜플에 넣어 반환한다.
가변 매개변수
- 함수가 지정된 데이터 타입으로 0개 또는 그 이상의 매개변수를 받는다는 것을 가리키기 위해서 세 개의 점(...)을 이용하여 선언한다.
inout 매개변수: call by reference
- Swift는 기본적으로 call by value
- Swift에서 call by reference를 구현하는 방법
- 함수가 값을 반환한 후에도 매개변수에 일어난 변화를 유지하려면, 함수의 선언부에서 매개변수를 입출력 매개변수(in-out parameter)로 선언해야 한다.
함수를 매개변수로 사용
- Swift는 함수를 데이터 타입처럼 처리할 수 있다.
- 함수를 상수 또는 변수에 할당하는 것이 가능하다.
- 함수를 호출하려면 원래의 함수 이름 대신에 상수 이름을 이용하여 호출 가능하다.
- 어떤 함수에 다른 함수를 인자로 넘겨주거나 함수의 반환 값으로 함수를 넘겨줄 수 있다.
- 매개변수로 함수를 받으려면, 함수를 받게 될 함수는 함수의 데이터 타입을 선언한다.
감사합니다.
잘못된 내용이 있거나 더 좋은 내용 피드백은 언제나 환영합니다!
궁금하신 부분은 댓글로 질문 부탁드립니다!
728x90
반응형
'Apple > Swift' 카테고리의 다른 글
[Swift] computed property, stored property, self, overloading (0) | 2023.02.01 |
---|---|
[Swift] 클래스, 객체, 인스턴스 (0) | 2023.01.31 |
[Swift] 연산자와 제어문 (0) | 2023.01.25 |
[Swift] 옵셔널의 개념과 강제 언래핑 (0) | 2023.01.19 |
[Swift] 데이터 타입, 자료형, print 함수, 변수, 상수, 튜플 (0) | 2022.07.08 |