Tag Archives: stroustrup.com

Why is the size of an empty class not zero?

다음 글은 이름이 어려우신 그 분의 웹페이지의 FAQ 2의 일부를 번역한 것입니다.

 

확실히 다른 두 객체면 주소가 서로 달라지도록 하기 위해서입니다. 같은 이유에서 new는 언제나 다른 객체의 포인터를 반환합니다.

다음을 봅시다.

빈 기본 클래스를 나타내기 위해 독립적인 바이트를 사용할 필요는 없다는 점은 재미있는 규칙입니다.

이 최적화는 안전하며 상당히 유용하게 쓰일 수 있습니다. 프로그래머는 빈 클래스들을 사용해 오버헤드 없이 간단한 컨셉을 잡을 수 있습니다. 일부 컴파일러들이 이 “빈 기본 클래스 최적화(Empty Base Class Optimization)”를 제공합니다.

 

더 읽을 거리