Tenia una duda, mejor dicho un problema respecto a las plantillas "templates"
Les dejo adjunto el codigo mas paso a explicar mi problema:
Código:
y en el Main:template<class T> class Vector { T *vec; int tam; public: Vector(int); ~Vector(); T& operator[](int); }; template<class T> Vector<T>::Vector(int n) { vec = new T[n]; tam = n; } template<class T> Vector<T>::~Vector() { delete [] vec; } template<class T> T& Vector<T>::operator[](int n) { if(n<tam) return vec[n]; else return vec[tam-1]; }
Código:
No voy a adjuntar en codigo la libreria cadena donde tengo definida la clase cadena, la probe aparte y anda, pero es muy extensa. int main() { Vector<Cadena> cadenas(10); for(int i=0;i<10;i++) { cout<<"Ingrese cadena: "; cin>>cadenas[i]; cout<<endl; } cout<<endl<<"Cadenas al reves:"<<endl; for(int i=9;i>=0;i--) cout<<cadenas[i]<<" "; return 0; }
Mi problema es que el programa se cuelga, es decir con los tipos standar de datos, int, float, double funciona bien generar vectores de clases, pero con clases creadas por mi nose porque se cuelga, el problema esta al iniciar el programa con el constructor, es evidente que sea un problema de memoria.. como lo podria solucionar??
Desde ya gracias !