RTTI (Run Time Type Information)


Anda Delphi programmer? Pernah menggunakan fitur RTTI? Kalau sudah pernah menggunakan operator is dan as, anda dapat dikatakan sudah pernah menggunakan fitur RTTI (Run Time Type Information). Hal lain adalah ketika Anda membutuhkan tipe data dan konstanta enumerasi, seringkali Anda membutuhkan nilai String dari nama enumerasinya. Hal termudah namun merepotkan memang membuat fungsi yang memetakan dari setiap nilai enum ke stringnya. Dengan fitur RTTI dari unit TypInfo, Anda dapat melakukannya dengan mudah secara programming.

Contoh:

unit TestingRTTI;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type
TForm3 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
TPerkakasDapur = (pdPisau, pdGarpu, pdPiring, pdGelas);

var
Form3: TForm3;

implementation

uses TypInfo;

{$R *.dfm}

procedure TForm3.FormCreate(Sender: TObject);
begin
showMessage(GetEnumName(TypeInfo(TPerkakasDapur), integer(pdGarpu))) ;
end;

end.

Aplikasi di atas akan menampilkan string dalam message box : pdGarpu

Coba tengok caranya untuk dua arah, dari string ke enum, dan dari enum ke string di sini. Punya pengalaman menarik untuk dishare tentang RTTI? Atau link menarik tentang RTTI seperti ini misalnya? Share dunk..

Tambahan url keren ttg RTTI:

http://robstechcorner.blogspot.com/search/label/RTTI

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s