swift
에서의 컬렉션은 struct
이다. 때문에 다음의 코드에서var array1 : [Int] = [1,2,3,4]
var array2 : [Int] = array1
을 한다면 원래는 값복사
가 일어나야 한다.
메모리 상에서
array1 -------------> [1,2,3,4]
array2 -------------> [1,2,3,4]
이렇게 존재해야하지만
우리가 array2 = array1을 했을 때 array2의 내용을 바꾸지 않는다면
array1 -------------> [1,2,3,4]
<------------- array2
array2
는 array1의 메모리 공간을 참조하게 된다.
그리고 나서 array2
에다가 5를 추가하게 되면 그제서야
array1 -------------> [1,2,3,4]
array2 -------------> [1,2,3,4,5]
과 된다.
xcode
에는 preview
라는 것이 있는데, contentview
와 다르다.예시로
struct ContentView : View{
var body : some View{
Text("Hello world!").padding()
}
}
struct ContentView_Previews : PreviewProvider{
static var previews : some View{
ContentView()
}
}
preview
에서 글자를 바꾸거나 스타일을 바꾸면 ContentView
에 자동으로 수정이 된다..라이브버튼
으로 핫리로딩 여부를 선택할 수 있다.