#ifndef VECTORH #define VECTORH #include using namespace std; template class vector { public: template vector(ITERATOR first, ITERATOR last); //declaration template void f(ITERATOR it) {} //declaration and definition }; template template ::vector::vector(ITERATOR first, ITERATOR last) //definition { cout << "Constructing a vector that contains"; for (; first != last; ++first) { cout << " " << *first; } cout << ".\n"; } #endif