반응형
오버로딩(Overloading)
같은 함수의 이름을 가지고 있지만 파라미터를 다르게 하여 다양한 유형의 호출에 응답이 가능한 것. 같은 이름, 다른 행동!!
func sportsBrand(brand: String){
print(brand)
}
func sportsBrand(brand: String){
print(brand)
}
|
함수 이름이 위 코드처럼 중복되는 경우에는 사용할 수 없다. 이런 경우 오버로딩을 사용하여 함수를 여러개 만들 수 있다.
func sportsBrand(brand: String){
print(brand)
}
func sportsBrand(brand2: String){
print(brand2)
}
sportsBrand(brand: "Nike")
sportsBrand(brand2: "Adidas")
|
위 코드처럼 함수의 파라미터 이름을 바꾸어서(brand와 brand2) 구분 짓거나
func luckyNumber(input: String){
print("문자열 형태의 행운의 숫자 : \(input)")
}
func luckyNumber(input: Int){
print("정수형 형태의 행운의 숫자 : \(input)")
}
luckyNumber(input: "Seven")
luckyNumber(input: 7)
|
데이터 타입이 다른 경우(String과 Int) 함수를 호출하여 사용할 수 있다. 또한 파라미터 개수가 달라도 구분하여 사용할 수 있다.
func luckyNumber(input: String){
print("문자열 형태의 행운의 숫자 : \(input)")
}
func luckyNumber(input: Int){
print("정수형 형태의 행운의 숫자 : \(input)")
}
func luckyNumber(input: Int, input2: String){
print("정수형, 문자열 형태의 행운의 숫자 : \(input), \(input2)")
}
luckyNumber(input: "Seven")
luckyNumber(input: 7)
luckyNumber(input: 7, input2: "Seven")
|
반응형
'언어 > Swift 5' 카테고리의 다른 글
[Swift 5] In-out 파라미터 사용 방법 (1) | 2020.03.24 |
---|---|
[Swift 5] 함수 사용 방법 (0) | 2020.03.23 |
[Swift 5] Any와 nil에 대하여 (0) | 2020.03.06 |