Union
Enum
공용체라고 한다. union은 선언은 구조체 선언하는 것과 비슷한데, 메모리할당 측면에서 구조체는 구조체안에 있는 변수만큼 메모리가 할당되지만, union은 멤버변수중에 가장 사이즈가 큰 것으로 메모리가 할당되고 그 할당된 메모리를 다른 변수들이 같이 쓴다. 예를 들면 union 안에 int와 char가 있으면 5byte(4+1)이 할당되지 않고 4byte가 할당되어 2개 변수가 그 메모리 영역을 같이 쓴다.
Union 활용(Endian 변경)
http://shinluckyarchive.tistory.com/283
Union 활용(Endian 변경)
http://shinluckyarchive.tistory.com/283
Enum
열거형타입이라고 한다. 타입이름을 정할 수 있고 그 타입은 일정한 값들만 허용된다.
예) Color라는 타입을 만들고 red, blue, green 값을 가질 때
enum Color{
예) Color라는 타입을 만들고 red, blue, green 값을 가질 때
enum Color{
RED, BLUE, GREEN };
왜 쓰는가? enum이 좋은점은 메소드나 클래스가 enum에 정의되어 있는 값만 사용된다. 이상한 값이 들어오는 것을 막아준다. 타입의 안전과 값의 안전.