Tag Archive for 'List'

Extensión para Firefox: List Open URLs (Listar URLs Abiertas)

Supongamos que estás buscando videos (o páginas web si preferís) de algún tema en particular. Y navegás por montones y montones… Abriendo nuevos tabs y hasta saltando entre links sin dejar abierta la URL anterior en otro lado (esto pasa normalmente cuando hacés click en cualquier “Video Relacionado” en YouTube, ya que se abre automáticamente en el mismo tab)…

Podría ser realmente tedioso ir por cada uno de los tabs rescatando todas las URLs interesantes para guardarlas…

También, si pudieras guardarlas como favoritos (asumiendo que no te importase el historial de navegación), no es muy simple obtener las URLs para copiarlas o para mandárselas a otra persona…

Para esto (y para cualquier otra utilidad que le puedas encontrar), desarrollé la extensión de Firefox “List Open URLs”…

ListOpenURLs_Menu

Seguir leyendo…

Incoming search terms for the article:

Clase Lista simple para C++

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);

Seguir leyendo…

Incoming search terms for the article: