2011年3月1日火曜日

Null許容型

delphilhlplibの中にNull許容型が容易されてるのでちょっと試してみた。

delpjihlplibは上記のリンクから最新のモジュールをダウンロードして
パッケージをインストールすることで使用可能になります。

以下試したソースコード

  1. unit Unit1;  
  2.   
  3. interface  
  4.   
  5. uses  
  6.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  
  7.   Dialogs, StdCtrls;  
  8.   
  9. type  
  10.   TForm1 = class(TForm)  
  11.     Button1: TButton;  
  12.     Label1: TLabel;  
  13.     Label2: TLabel;  
  14.     Label3: TLabel;  
  15.     procedure Button1Click(Sender: TObject);  
  16.   private  
  17.     { Private 宣言 }  
  18.   public  
  19.     { Public 宣言 }  
  20.   end;  
  21.   
  22. var  
  23.   Form1: TForm1;  
  24.   
  25. implementation  
  26. Uses DeHL.Nullable;  
  27.   
  28. {$R *.dfm}  
  29.   
  30. procedure TForm1.Button1Click(Sender: TObject);  
  31. var  
  32.   i : Nullable <integer>  
  33. begin  
  34.   
  35.   //値を代入する前はNULL  
  36.   if i.IsNull then  
  37.   begin  
  38.     Label1.Caption := 'Null';  
  39.   end;  
  40.   
  41.   //値を代入すると普通の型のように扱える  
  42.   i.Value := 100;  
  43.   Label2.Caption := IntToStr(i);  
  44.   
  45.   //MakeNullでNullをセットできるようだ。  
  46.   i.MakeNull;  
  47.   
  48.   if i.IsNull then  
  49.   begin  
  50.     Label3.Caption := 'Null';  
  51.   end;  
  52.   
  53. end;  
  54.   
  55. end.  

delphihelplibには、そのほかにもいろいろなクラスがあるようなので、追々試してみようと思う。