Con respecto a la pregunta original, creo que es algo mas simple, todas son clases que implementan las siguientes estructuras de datos:
TList es una lista simple.
TQueue es una pila
FIFO (first-in first-out)
TStack es una pila
LIFO (last-in first-out)
Saludos!
Cita:
Empezado por Thoronluin
Perdón por mi ignorancia pero estoy intentando crear una cola con Tqueue y encuentro poca información o información errónea.
|
Código Delphi
[-]
var
Q: TQueue;
begin
Q := TQueue.Create;
try
Q.Push(Item);
...
Item := Q.Pop;
finally
Q.Free;
end;
Cita:
Empezado por Thoronluin
Lo que meta el la pila ha de ser una clase no puede ser una variable, por ejemplo un record con varios campos.
|
TQuote es un TOrderedList list, y este tipo de listas utilizan punteros, o sea que puedes perfectamente asignar la dirección de un registro.
Cita:
Empezado por Thoronluin
¿Para liberar la memoria bastaría con lo siguiente?
|
Solo liberará el espacio de memoria de la clase, no de sus objetos referenciados, tienes que eliminarlos "manualmente", y puedes usar la misma pila para acceder a ellos.
Saludos!