더북(TheBook)

저장하는 방식에서 명백하게 알 수 있듯이 모든 것에 구조체를 사용할 수는 없다. 구조체에 대한 공통적인 참조를 공유할 수 없으므로 다른 참조에서 공통 인스턴스를 변경할 수 없다. 우리가 무의식적으로 자주 하지만 절대 깊이 생각하지는 않는 것이다. 만약 여러분이 구조체를 변경하길 원하며 get; private set; 대신 get; set; 수정자를 사용한다고 생각해 보자. 우리는 즉시 struct를 수정할 수 있다. 다음 코드를 살펴보자.

코드 3-9 가변 구조체

public struct Person {
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string City { get; set; }
    public Person(int id, string firstName, string lastName,     string city) {
        Id = id;
        FirstName = firstName;
        LastName = lastName;
        City = city;
    }
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.