Tal como publiqué hace algunos días la Clase String Simple para C++ como un ejercicio de aprendizaje de C++, ahora estoy liberando una Clase Lista simple para C++.
La librería standard tiene una clase list. Pero, mientras se está aprendiendo, es una buena idea saber cómo poder desarrollar tu propia clase list.
Esa es la razón por la que hice la clase List. No está pensada para proyectos profesionales (para ellos, deberías utilizar la list de la librería standard), sino como una ayuda para aprender C++.
template <class TYPE> class List { /* ... */ public: //Construction and destruction List() { /* ... */ } ~List() { /* ... */ } List(const List& rlList) { /* ... */ } //Assignment operator List& operator=(const List& rlList); //Information int Length() { /* ... */ } bool Empty() { /* ... */ } //Element managing int Add(TYPE& rtData); TYPE* Elem(int nPos); bool Delete(int nPos); void DeleteAll(); //Search int Find(TYPE& rItem, int nStartAt = 0); //Operadores TYPE& operator[](int nPos) { /* ... */ } //Elem int operator<<(TYPE& rdData) { /* ... */ } //Add protected: void FreeList(); void Init() { /* ... */ } }; //Output template <class TYPE> std::ostream& operator<<(std::ostream& oStream, List<TYPE>& rlList);
Comentarios recientes