[swift] Swift 구조체의 값 타입 특성에 대해 설명해주세요.

다른 변수에 할당하거나 함수에 전달될 때, 구조체의 인스턴스는 원본과는 별도로 새로운 복사본이 생성됩니다. 이를 통해 구조체의 속성들이 변경되어도 다른 인스턴스에는 영향을 주지 않습니다.

예를 들어, 다음과 같은 구조체가 있다고 가정해봅시다.

struct Point {
    var x: Int
    var y: Int
}

var originalPoint = Point(x: 5, y: 10)
var copiedPoint = originalPoint
copiedPoint.x = 3

print(originalPoint.x) // 출력 결과는 5가 나옵니다.
print(copiedPoint.x) // 출력 결과는 3이 나옵니다.

이와 같이 값 타입의 특성으로 인해 originalPointcopiedPoint는 서로 독립적으로 값이 변경됩니다.

참고 자료