Swift 공식 문서에 따르면 아래와 같이 설명하고 있다. functions(함수)는 특정 작업을 수행하는 코드 덩어리입니다. 함수가 수행하는 작업을 식별하는 이름을 지정. 해당 작업을 수행할 때 함수 이름을 호출하여 사용합니다.
함수에서 가장 중요한 것은 “함수를 선언” 하는 것과 그것을 “호출”하는 것이다. 그러기 위해서 함수의 구성요소에 대해서 알아보자!
func sayHello(from me: String, to you: String) -> String {
print("안녕 \\(you)야? 나는 \\(me)라고 해~")
return "hello"
}
let hello = sayHello(from: "류희재", to: "장석우") // 안녕 장석우야? 나는 류희재라고 해~
print(hello) // hello
굉장히 혼동될 수 있는 문제이기 때문에 따로 정리를 하려고 한다.결론부터 말하자면 매개변수와 전달인자는 함수에 전달하거나 함수 내부에서 전달받는 "값"을 의미하지만 위치에 따라서 다르게 부르는 것
이름을 혼동하기 쉬운데 아래와 같이 생각하면 된다!
파라미터 == 인자 == 매개변수
아규먼트 == 인수 == 전달인자
매개변수는 어떤 이름으로 함수 내부에서 사용할 것인지를 명시하기 위한 것이며 전달인자는 어떤 이름으로 함수에 값을 보내줄 것인지 정해주고 함수 정의부에 매개변수와 함께 사용하는 것이고, 생략이 가능합니다. 전달인자 레이블을 생략할 때는 **와일드 카드 패턴(_)**을 활용할 수 있습니다!