function과 method의 차이:
method는 instance에 귀속되어서 사용할 수 있는 것
function과 마찬가지로 기능을 수행하는 코드블록이다.
function과 다르게 Structure, Class안에서 동작하는 것
이번에는 Structure와 관련된 Method에 대해 알아보자
struct Lecture {
var title: String
var maxStudents: Int = 10
var numOfRegistered: Int = 0
// 강의의 남은 자리수 확인하는 함수
func remainSeats() -> Int {
return lec.maxStudents - lec.numOfRegistered
}
// swift는 var 변수라도 함부로 값을 변경하면 안된다.
// func register() {
// numOfRegistered += 1
// }
// Structure에서는 property의 값을 변경하는 경우 mutating라는 키워드를 이용해야 한다.
mutating func register(){
numOfRegistered += 1
}
//type property
static var target: String = "Anybody want to learn something"
//type method , lecture가 속한 학원이름을 반환하는 함수를 만들어보자
static func 소속학원이름() -> String {
return "fastcampus"
}
}
var lec = Lecture(title: "IOS basic", maxStudents:10, numOfRegistered:0)
// var lec = Lecture(title: "IOS basic") // playground에서는 이렇게도 가능
print(lec.remainSeats())
lec.register()
print(lec.remainSeats())
print(Lecture.target)
print(Lecture.소속학원이름())
'Toy Project > Swift Language Syntax' 카테고리의 다른 글
14. Swift Class (0) | 2021.01.22 |
---|---|
13. Swift Method extension (0) | 2021.01.22 |
11. Swift Property(속성) (0) | 2021.01.21 |
10. Swift Protocol (0) | 2021.01.21 |
9. Swift Structure practice (0) | 2021.01.21 |