unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); end; var Form1: TForm1; implementation {$R *.dfm} uses Generics.Collections; procedure TForm1.Button1Click(Sender: TObject); var Stack: TStack<string>; s,str: string; begin Stack := TStack<string>.Create(); {压栈} Stack.Push('AAA'); Stack.Push('BBB'); Stack.Push('CCC'); str := ''; for s in Stack do str := str + s + ' '; ShowMessage(str); {AAA BBB CCC } {出栈: 后进的先出} Stack.Pop; str := ''; for s in Stack do str := str + s + ' '; ShowMessage(str); {AAA BBB } {下一个将要出栈的...} ShowMessage(Stack.Peek); {BBB} Stack.Free; end; end.