걍 concept로 무슨 인터페이스 구현해야하는지 다 정해놓고

static_assert() 박아놓으면 그게 trait이지 머. (이건 템플릿이랑 상관없이 할 수 있는거임)

제네릭 만들때 trait 제한거는것도 concept랑 똑같고