Method : object.methodName()
Function : functionName()
; ex> print()..
func printString(_ first: String, _ second: String)
{
print("\(first) \(second)")
}
printString("언더", "스코어")
*파라미터 이름을 사용하지 않으려면 "_(언더스코어)"를 사용
// In-out parameter
var value = 3
func incrementAndPrint(_ value: inout Int) {
value += 1
print(value)
}
incrementAndPrint(&value)
* "inout" 키워드를 사용하여 in-out parameter 사용
// Function as a param
func add(_ a: Int, _ b: Int) -> Int {
return a + b
}
func subtract(_ a: Int, _ b: Int) -> Int {
return a - b
}
// 함수에 함수를 던지는 방식
func printResult( _ function: (Int, Int) -> Int, _ a: Int, _ b: Int) {
let result = function(a, b)
print(result)
}
printResult(add, 10, 5) // 15
printResult(subtract, 10, 5) // 5