함수

Hyunseok·2021년 7월 6일
0

Swift-기본문법정리

목록 보기
4/4

함수

📌 함수 정의

아래의 형태로 함수를 정의한다.

⁉️ 반환값이 없을 때, 반환타입으로 `Void`를 넣거나 `-> 반환타입` 부분을 생략
func 함수이름 (param1Name: param1Type, param2Name: param2Type) -> 반환타입 {
    /* 구현부 */
    return 반환값
}

📌 함수 호출

 /* 1. 매개변수 이름과 값을 넣어 호출 */
 callFunction(a: 10, b: 20)
/* 2. 전달인자 레이블과 값을 넣어 호출 */
// func callFunction(left a: Int, right b: Int) -> Int {}
callFunction(left: 10, right: 20)  
/* 3. 전달인자 레이블이 '_'여서 값만 넣어 호출 */
// func callFunction(_ a: Int,_ b: Int) -> Int {}
callFunction(10, 20)

📌 함수 타입 표현

함수도 하나의 객체로 변수나 상수에 하나의 타입으로 지정해서 저장 가능
func sum (a: Int, b: Int) -> Int {
    return a+b
}
var varFunction: (Int, Int) -> Int = sum(a:b:)

📌 매개변수 Default 값 설정

func 함수이름(param1Name: param1Type = defaultValue) {}

📌 전달인자 레이블 (Argument Label)

매개변수의 별명으로, 매개변수의 의미를 더 명확히 해야할 경우에 사용

⁉️ 전달인자 부분에 `_`를 사용하면, 함수 호출시에 매개변수이름없이 호출 가능
func 함수이름(전달인자 param1Name: param1Type) {}

📌 가변 매개 변수

함수당 1개인 맨 마지막 매개변수 타입 뒤에 띄어쓰기 없이 '...'로 표현

⁉️ 함수 body에서 가변 매개 변수로 넘어온 인자는 `Array<paramType>` 타입으로 전달  
func getStringNames(friends: String...) -> String {
	return "\(friends)"
}
getStringName() // 결과 : []



🧷 참고한 강의 : "iOS 프로그래밍을 위한 스위프트 기초"

0개의 댓글

관련 채용 정보