// 함수의 갯수를 생각해보자. template<typename T> class Vector { T* buff; int sz; public: int size() const {} bool empty() const {} void push_front(const T& a) {} T& front() {} }; int main() { Vector<int> v1; Vector<short> v2; Vector<double> v3; } 4개의 함수 * 3개의 타입 -> 12개 함수가 만들어짐. 함수의 개수를 줄여보자. T를 사용하지 않는 모든 멤버는 기반클래스로 만들자. class VectorBase { protected: int sz; public: int size() const {} bool empty() const {} }; template<typename T> class Vector : public VectorBase { T* buff; public: void push_front(const ...
#template
#Thin
#씬템플릿
#템플릿
원문링크 : Thin Template