二十二、详测 Generics Collections TQueue (2): Create、Count、Clear、TrimExcess
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses
Generics.Collections;
procedure TForm1.Button1Click(Sender: TObject);
var
Queue: TQueue<string>;
List: TList<string>;
s, str: string;
begin
List := TList<string>.Create;
List.AddRange(['aa','bb','cc']);
Queue := TQueue<string>.Create(List);
str := '';
for s in Queue do str := str + s + ' ';
ShowMessage(str);
ShowMessage(IntToStr(Queue.Count)); // 3
Queue.Clear;
ShowMessage(IntToStr(Queue.Count)); // 0
Queue.TrimExcess; //好像没什么用
List.Free;
Queue.Free;
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses
Generics.Collections;
procedure TForm1.Button1Click(Sender: TObject);
var
Queue: TQueue<string>;
List: TList<string>;
s, str: string;
begin
List := TList<string>.Create;
List.AddRange(['aa','bb','cc']);
Queue := TQueue<string>.Create(List);
str := '';
for s in Queue do str := str + s + ' ';
ShowMessage(str);
ShowMessage(IntToStr(Queue.Count)); // 3
Queue.Clear;
ShowMessage(IntToStr(Queue.Count)); // 0
Queue.TrimExcess; //好像没什么用
List.Free;
Queue.Free;
end;
end.