union
2025. 3. 26. 19:41ㆍC++
- 메모리 사용을 최적화할 때.
- 여러 방식으로 데이터를 처리가 필요할 때.
- 상호 변환 가능한 값들이 있을 때. 예를 들어, 동일한 숫자나 값들을 다른 형식으로 나타내야 할 때 union을 사용.
union Color {
struct {
uint8_t red;
uint8_t green;
uint8_t blue;
};
uint32_t hexColor; // 32비트로 색상 표현
};
RGB 값을 개별적으로 접근하려면 red, green, blue를 사용.
전체 색상 값을 한 번에 접근하려면 hexColor를 사용.
이렇게 사용하게 되면 hexColor를 사용하고 red, green, blue는 다시 값을 설정하고 사용해야한다. 반대 경우도 동일.
하지만 이렇게 새로운 프로세스가 추가되더라도 메모리 절약 사용과 다양한 방식으로 데이터를 다룰 수 있는 유연성을 제공하기에 프로세스를 추가하는 것 보다 효율적이다고한다.
ex) 메모리 제약이 있는 임베디드 시스템, 성능이 중요한 애플리케이션
'C++' 카테고리의 다른 글
fstream (0) | 2025.03.31 |
---|---|
참조자(Reference) (0) | 2025.03.27 |
SSO (0) | 2025.03.26 |
소멸자(destructor) (0) | 2025.03.26 |
힙 / 스택 (0) | 2025.03.25 |