본문/내용
1. C#에서 클래스와 구조체의 차이점에 대해 설명하시오.
클래스와 구조체는 모두 데이터를 묶어 하단위로 사용할 수 있게 하는 사용자 정의 데이터 타입입니다. 그러나 C#에서 두 타입은 중요한 차이점이 있습니다. 클래스는 참조 타입으로 힙에 할당되고, 변수는 참조를 저장합니다. 따라서 클래스를 복사하면 참조가 복사되어 하객체를 공유하게 되며, 이로 인해 여러 객체가 같은 데이터를 변경할 수 있습니다. 반면 구조체는 값 타입으로 스택에 저장되며, 변수 간 복사 시 실제 값을 복사합니다. 따라서 구조체는 독립된 데이터 복사 결과를 갖고, 변경이 다른 구조체에 영향을 미치지 않습니다. 성능 측면에서는, 구조체는 크기가 작고 불변 특성을 갖는 경우에 유리하며, 예를 들어 수치 계산이나 3D 그래픽에서 위치 데이터 등을 구조체로 처리하면 메모리 할당이 줄어들어 15-20%의 성능 향상 효과를 기대할 수 있습니다. 반면, 클래스는 복잡한 객체, 상속, 다형성을 지원하며, 유지보수와 확장성 측면에서 유리하다고 판단됩니다. 실제로 20만 개의 데이터를 처리하는 과제에서 구조체를 활용할 경우 메모리 사용량이 30% 이상 절감되어 효율적입니다. 이러한…