C#의 struct는 꼭 스택에 있지 않습니다 — CLR의 메모리 관리 방식
C#에서 struct와 class의 차이는 스택과 힙의 구분이 아니라 값 의미론과 참조 의미론입니다. struct는 선언된 컨테이너가 놓인 곳에 저장되므로 클래스 필드나 배열, async 상태 머신 안에서는 힙에 놓일 수 있습니다. 글은 박싱, 배열의 메모리 배치, Span<T>와 struct 설계 원칙까지 살펴봅니다.
C#에서 struct와 class의 차이는 스택과 힙의 구분이 아니라 값 의미론과 참조 의미론입니다. struct는 선언된 컨테이너가 놓인 곳에 저장되므로 클래스 필드나 배열, async 상태 머신 안에서는 힙에 놓일 수 있습니다. 글은 박싱, 배열의 메모리 배치, Span<T>와 struct 설계 원칙까지 살펴봅니다.