나에게 제네릭은 타입 그 이상의 의미가 없던 애들이라 (Java, TS)

실제 런타임에서는 모두 제거되는 정보라 알 수 없는 정보라 알고있었는데...



c++, rust를 보니 그 타입 자체를 사용할 수 있게 되어있네

컴파일러단에서 진짜 '템플릿'이라고 판단해서 미리 정적 코드 생성해놓는 기능이 있나보네


Java는 스펙처럼 Object 타입으로 억지캐스팅해서 써야하는 경우가 있었는데

C++은 컴파일러 믿고 그냥 타입을 런타임 구현체처럼 써도 되네


제네릭 설계와 구현이 꽤 중요하구나