C에서 제네릭 자료구조를 구현하는 다양한 수준의 기법을 설명한다.
제네릭 헤더, void* 기반, 유연 배열 멤버, 타입 검사 매크로의 네 가지 접근 방식을 다룬다.
유니온과 __typeof__를 활용해 컴파일 타임에 잘못된 타입 추가 시 오류를 발생시킬 수 있다.
이전 컴파일러에서도 동작하도록 구조체 매크로와 do while(0) 패턴을 사용한 호환성 기법을 제시한다.
typedef를 통해 동일한 제네릭 타입 간 변수 할당 및 함수 인자 전달 오류를 회피할 수 있다.
Get notified when new stories are published for "🇰🇷 Hacker News 한국어"