일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- weak var
- CLLocationManagerDelegate
- dispatchsource
- UIAlertAction
- 러닝기록앱
- Xcode
- 서체관리자
- WeatherManager
- Startign Assignments
- Timer
- SwiftUI Boolean 값
- xcode로 날씨앱 만들기
- App Store Connect
- 한국어 개인정보처리방침
- 러닝타이머
- Protocol
- 클로저의 캡슐화
- weatherKit
- addannotation
- swift
- 영문 개인정보처리방침
- AnyObject
- MKMapItem
- UICollectionViewFlowLayout
- CoreLocation
- Required Reason API
- 단일 책임원칙
- RunningTimer
- font book
- MKMapViewDelegate
- Today
- Total
VesselWheel
In-Out paramters// 입출력 파라미터 본문
import UIKit
// In-Out paramters
// 입출력 파라미터
// var <-- num1, num2 를 변수로 선언함
var num1 = 14
var num2 = 25
func swapNumber(_ n1: Int, with n2: Int){
// parameter 는 함수 body 에서 사용하는
// 임시 상수(constant)이므로 할당이 안 됨
// ㄴ parameter 값을 직접 변경할 수 없음
/*
var tmp = n1
n1 = n2
n2 = tmp
*/
}
swapNumber(num1, with: num2)
func test1(to num1: Int, with num2: Int){
print("num1 :",num1,"num2 :",num2)
}
test1(to: num1, with :num2)
num1 = 14
num2 = 25
print("swapNumber2 함수 호출 전")
print("num1 :",num1,", num2 :",num2)
func swapNumber2(_ n1: inout Int, with n2: inout Int){
// 함수 내부에서 함수 외부에 있는 변수의 값을 변경함
var tmp = n1
n1 = n2
n2 = tmp
}
// & : 주소연산자
// n1에는 num1의 주소가 할당됨
// n2에는 num2의 주소가 할당됨
swapNumber2(&num1, with: &num2)
print("swapNumber2 함수 호출 후")
print("num1 :",num1,", num2 :",num2)
// let <-- a, b 를 상수로 선언함
let a = 46
let b = 32
// 상수를 inout parameter 에 전달할 수 없음
// swapNumber2(&a, with: &b)
// literal data 도 inout parameter 에 전달할 수 없음
// swapNumber2(&10, with: &20)
/*
inout parameter 에는 기본값을 할당할 수 없음
func swapNumber3(_ n1: inout Int = 10, with n2: inout Int = num2){
// 함수 내부에서 함수 외부에 있는 변수의 값을 변경함
var tmp = n1
n1 = n2
n2 = tmp
}
*/
/* inout parameter 를 가변파라미터로 선언할 수 없음
func test2(of nums: inout Int...){
}
*/
'Xcode Study' 카테고리의 다른 글
function type - 함수의 자료형(2/2) (0) | 2023.10.16 |
---|---|
function type - 함수의 자료형(1/2) (1) | 2023.10.14 |
가변 parameters(variadic parameters) / 4-4 (1) | 2023.10.14 |
argument label (0) | 2023.10.14 |
parameter 가 있는 함수 (0) | 2023.10.14 |