Задан такой класс.
Код:
template <class T>
class vector
{
public:
typedef T* iterator;
vector(int sz);
~vector() { delete []v;}
iterator begin() { return v;}
iterator end() {return v+sz;}
show_sz();
int get_sz();
show_vector();
private:
T* v;
int sz;
};
Для чего мы ставим ключевое слово typedef в строке "typedef T* iterator;"? Почему нельзя написать "T* iterator;"?