라벨이 template인 게시물 표시

Exceptional C++ Style : 6. 여러수준의 일반성, 2부: 충분히 일반적인가?

첫번째 문제 아래 코드를 실행해 보면, #include <stdio.h> #include <list> template <class T> void destroy(T* p) { p->~T(); } class Integer { public: Integer(int value) : p(value) {printf("create Interger\n");} ~Integer() { printf("destroy Interger\n"); } int getValue() {return p;} int p; }; template<typename T> class Fwdlter : public std::list<T>::iterator {  T* p; public:  Fwdlter(T* x) :p(x) {}  ~Fwdlter() { printf("iterator destroy\n");}  Fwdlter(const Fwdlter& mit) : p(mit.p) {}  Fwdlter& operator++() {++p;return *this;}  Fwdlter operator++(int) {Fwdlter tmp(*this); operator++(); return tmp;}  bool operator==(const Fwdlter& rhs) {return p==rhs.p;}  bool operator!=(const Fwdlter& rhs) {return p!=rhs.p;}  T& operator*() {return *p;} }; template <class Fwdlter> void destroy(Fwdlter first, Fwdlter last) { while (f...