Structures and Classes
작성일
Structures and Classes
struct
struct Person {
var name: String
var age: Int
func speak() {
print("Hello")
}
}
구조체는 값타입이고, 스택에만 존재한다.
let p = Person(name: "Steve", age: 50)
p.name // "Steve"
p.age // 50
구조체로 인스턴스화 시키고 구조체 안에 name과 age에 접근하려면
p.name, p.age등 으로 접근해야한다.
class
class Pserson {
var name = "John Doe"
var age = 0
func speak() {
print("Hello")
}
}
let p = Person()
p.name // "John Doe"
p.age // 0
p.speak() // "Hello"
class는 struct와 똑같이 구현이 가능하다.
하지만, class는 힙 영역에 올라가고 참조 타입이여가지고 좀 더 길게 메모리영역에 남는다.