Vector de genericos

amarques
26 de Noviembre del 2007
Hola debe ser una tonteria pero no consigo que funcione. Es simplemente que creo una clase vector de genericos es decir de cualquier tipo o clase. Me permite construirla pero al acceder a una función de la misma me dice qiue la función no es miembro:

15 C:\Dev-Cpp\proyectos\Vector\main.cpp \'class std::vector<int, std::allocator<int> >\' has no member named \'push\'

El código es el siguiente:
//****** Declaración de vector ********************
template <class T>
class vector
{
protected:
int size;
int capacity;
T* data;
public:
vector(int min,int max);
vector();
~vector();
void push();
};
//****** Declaración de vector ********************
El código es el siguiente:
//****** Declaración de vector ********************
template <class T>
class vector
{
protected:
int size;
int capacity;
T* data;
public:
vector(int min,int max);
vector();
~vector();
void push();
};
//****** Declaración de vector ********************
//****** Implementación de vector ********************
template <class T>
template <class T>
void vector<T>::push (){
if (data.size<capacity) {
data[size+1]=x;
}else{
resize(size);
}
}

//****** Implementación de vector ********************
//****** En el main ********************
//Instancio la clase vector
vector <int> v(i,j);
//Hago push sobre vector
int k=9;
v.push(k);
//****** En el main ********************


No veo nada que este mal alguien me puede ayudar???