Tipe Data di Delphi


Delphi tipe data
Menyimpan data dalam program komputer
Bagi mereka yang baru untuk pemrograman komputer, data dan kode berjalan seiring. Anda tidak dapat menulis sebuah program dari setiap nilai riil tanpa baris kode, atau tanpa data. Sebuah program Word Processor memiliki logika yang mengambil apa yang user jenis dan menyimpannya dalam data. Ia juga menggunakan data untuk mengontrol bagaimana toko dan format apa yang user jenis dan klik.

Data disimpan dalam memori komputer saat program berjalan (itu juga dapat disimpan dalam sebuah file, tapi itu adalah masalah lain di luar cakupan tutorial ini). 'Slot' Setiap memori diidentifikasi dengan nama yang programmer memilih. Misalnya LineTotal dapat digunakan untuk nama slot memori yang menyimpan jumlah baris dalam dokumen Word Processor.

Program ini secara bebas dapat membaca dari dan menulis ke slot memori. Jenis data disebut Variabel a. Hal ini dapat berisi data seperti nomor atau teks. Adakalanya kita mungkin memiliki data yang kita tidak ingin berubah. Sebagai contoh, jumlah maksimum baris bahwa Word Processor dapat menangani. Ketika kita memberi nama data tersebut, kami juga memberikan nilai tetapnya. Ini disebut konstanta.


tipe data Delphi Simple
Seperti bahasa modern, Delphi menyediakan beragam cara untuk menyimpan data. Kita akan membahas ini, jenis dasar sederhana di sini. Sebelum kita melakukannya, kita akan menunjukkan bagaimana mendefinisikan variabel ke Delphi:

 var                      // This starts a section of variables
   LineTotal : Integer;   // This defines an Integer variable called LineTotal
   First,Second : String; // This defines two variables to hold strings of text




Kami akan menunjukkan kemudian persis di mana bagian ini var cocok dengan program anda. Perhatikan bahwa definisi variabel yang menjorok - ini membuat kode lebih mudah dibaca - yang menunjukkan bahwa mereka adalah bagian dari blok var. 

  
Setiap variabel dimulai dengan nama yang Anda pilih, diikuti dengan: dan kemudian jenis variabel. Seperti dengan semua pernyataan Delphi, sebuah; berakhir baris. Seperti yang Anda lihat, Anda dapat mendefinisikan beberapa variabel dalam satu baris jika mereka dari jenis yang sama. 
  
Hal ini sangat penting bahwa nama yang Anda pilih untuk setiap variabel adalah unik, jika Delphi tidak akan tahu bagaimana mengidentifikasi yang Anda maksud. Hal ini juga harus berbeda dari kata kunci bahasa Delphi. Anda akan mengatakan bila Anda telah melakukannya dengan benar ketika Delphi mengkompilasi OK kode Anda (dengan menekan Ctrl-F9 untuk kompilasi). 
  
Delphui tidak sensitif tentang kasus (lebih rendah atau atas) nama Anda. Memperlakukan nama theCAT sama dengan TheCat. 
  
Type Number
Delphi menyediakan banyak jenis data yang berbeda untuk nomor penyimpanan. Pilihan Anda tergantung pada data yang ingin Anda menangani. Firman Prosesor kami jumlah baris adalah unsigned integer, jadi kita bisa memilih Firman yang dapat menyimpan nilai sampai dengan 65.535. Perhitungan keuangan atau matematika mungkin memerlukan angka dengan desimal - angka floating point. 

 var
   // Integer data types :
   Int1 : Byte;     //                        0 to 255
   Int2 : ShortInt; //                     -127 to 127
   Int3 : Word;     //                        0 to 65,535
   Int4 : SmallInt; //                  -32,768 to 32,767
   Int5 : LongWord; //                        0 to 4,294,967,295
   Int6 : Cardinal; //                        0 to 4,294,967,295
   Int7 : LongInt;  //           -2,147,483,648 to 2,147,483,647
   Int8 : Integer;  //           -2,147,483,648 to 2,147,483,647
   Int9 : Int64;  // -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
 
   // Decimal data types :
   Dec1 : Single;   //  7  significant digits, exponent   -38 to +38
   Dec2 : Currency; // 50+ significant digits, fixed 4 decimal places
   Dec3 : Double;   // 15  significant digits, exponent  -308 to +308
   Dec4 : Extended; // 19  significant digits, exponent -4932 to +4932


Beberapa contoh numerik sederhana useage variabel diberikan di bawah ini - rincian yang lebih lengkap pada nomor yang diberikan dalam tutorial Numbers.

Type Text
Seperti banyak bahasa lainnya, Delphi memungkinkan Anda untuk menyimpan huruf, kata, dan kalimat dalam variabel tunggal. Ini dapat digunakan untuk menampilkan, untuk menahan rincian pengguna dan sebagainya. Huruf A disimpan dalam variabel jenis karakter tunggal, seperti Char, dan kata-kata dan kalimat disimpan dalam tipe string, seperti String.
var
   Str1 : Char;        // Holds a single character, small alphabet
   Str2 : WideChar;    // Holds a single character, International alphabet
   Str3 : AnsiChar;    // Holds a single character, small alphabet
   Str4 : ShortString; // Holds a string of up to 255 Char's
   Str5 : String;      // Holds strings of Char's of any size desired
   Str6 : AnsiString;  // Holds strings of AnsiChar's any size desired
   Str7 : WideString;  // Holds strings of WideChar's of any size desired



Beberapa contoh variabel teks useage sederhana diberikan di bawah ini - rincian yang lebih lengkap di strngs dan karakter diberikan dalam tutorial Teks.

Type Data Logical
Ini digunakan dalam hubungannya dengan logika pemrograman. Mereka sangat sederhana:

 var
   Log1 : Boolean;     // Can be 'True' or 'False'

Variabel boolean adalah bentuk tipe enumerasi. Ini berarti bahwa mereka dapat memegang salah satu dari sejumlah nilai, yang ditunjuk oleh nama. Di sini, nilai dapat menjadi Benar atau Salah. Lihat tutorial di Logika dan Looping untuk rincian lebih lanjut.

Set, enumerations dan subtipe
Delphi unggul di daerah ini. Menggunakan set dan enumerations membuat kode Anda baik lebih mudah digunakan dan lebih handal. Mereka digunakan ketika kategori data yang digunakan. Misalnya, Anda mungkin memiliki penghitungan bermain sesuai kartu. Anda benar-benar menghitung nama-nama sesuai. Sebelum kita dapat memiliki variabel enumerated, kita harus mendefinisikan nilai-nilai pencacahan. Hal ini dilakukan dalam bagian jenis.


 type
   TSuit = (Hearts, Diamonds, Clubs, Spades);    // Defines the enumeration
 var
   suit : TSuit;                                 // An enumeration variable

Set sering bingung dengan enumerations. Perbedaannya adalah rumit untuk dimengerti. Variabel pencacahan hanya dapat memiliki salah satu nilai dicacah. Himpunan A dapat memiliki tidak ada, 1, beberapa, atau semua nilai yang ditetapkan. Di sini, nilai-nilai set tidak bernama - mereka hanya diindeks slot dalam rentang numerik. Bingung? Nah, berikut adalah contoh untuk mencoba membantu Anda. Ini akan memperkenalkan sedikit kode sedikit lebih awal, tetapi penting untuk memahami.
 type
   TWeek = Set of 1..7;             // Set comprising the days of the week, by number
 var
   week : TWeek;
 begin
   week := [1,2,3,4,5];      // Switch on the first 5 days of the week
 end;

Lihat referensi Set, dan Set dan tutorial enumerations untuk rincian lebih lanjut. Bahwa tutorial memperkenalkan tipe data lebih lanjut - tipe subrange.
 

Dengan menggunakan tipe data sederhana
Variabel dapat dibaca dari dan ditulis. Ini disebut penugasan. Mereka juga dapat digunakan dalam ekspresi dan logika pemrograman. Lihat tutorial teks dan tutorial Pemrograman logika untuk lebih lanjut tentang topik ini.
 
Menugaskan ke dan dari variabel
Variabel dapat ditugaskan dari nilai-nilai konstan, seperti 23 dan 'Nama Saya', dan juga dari variabel lain. Kode di bawah ini menggambarkan tugas ini, dan juga memperkenalkan bagian lebih lanjut dari program Delphi: const (konstanta) bagian. Hal ini memungkinkan programmer untuk memberi nama nilai-nilai konstan. Hal ini berguna di mana konstanta yang sama digunakan di seluruh program - di mana perubahan konstan didefinisikan dapat memiliki efek global pada program.
 
Perhatikan bahwa kita menggunakan huruf besar untuk mengidentifikasi konstanta. Ini hanya konvensi, karena Delphi adalah tidak sensitif huruf dengan nama (itu adalah dengan string). Perhatikan juga bahwa kita menggunakan = untuk mendefinisikan nilai konstan.
 types
   TWeek = 1..7;             // Set comprising the days of the week, by number
   TSuit = (Hearts, Diamonds, Clubs, Spades);    // Defines an enumeration
 
 const
   FRED          = 'Fred';       // String constant
   YOUNG_AGE     = 23;           // Integer constant
   TALL : Single = 196.9;        // Decimal constant
   NO            = False;        // Boolean constant
 
 var
   FirstName, SecondName : String;   // String variables
   Age                   : Byte;     // Integer variable
   Height                : Single;   // Decimal variable
   IsTall                : Boolean;  // Boolean variable
   OtherName             : String;   // String variable
   Week                  : TWeek;    // A set variable
   Suit                  : TSuit;    // An enumeration variable
 
 begin   // Begin starts a block of code statements
   FirstName  := FRED;          // Assign from predefined constant
   SecondName := 'Bloggs';      // Assign from a literal constant
   Age        := YOUNG_AGE;     // Assign from predefined constant
   Age        := 55;            // Assign from constant - overrides YOUNG_AGE
   Height     := TALL - 5.5;    // Assign from a mix of constants
   IsTall     := NO;            // Assign from predefined constant 
   OtherName  := FirstName;     // Assign from another variable
   Week       := [1,2,3,4,5];   // Switch on the first 5 days of the week
   Suit       := Diamonds;      // Assign to an enumerated variable
 end;    // End finishes a block of code statements
 FirstName  is now set to 'Fred'
 SecondName is now set to 'Bloggs'
 Age        is now set to 55
 Height     is now set to 191.4
 IsTall     is now set to False
 OtherName  is now set to 'Fred'
 Week       is now set to 1,2,3,4,5
 Suit       is now set to Diamonds  (Notice no quotes)
Perhatikan bahwa ketiga konstan, TINGGI, didefinisikan sebagai jenis Tunggal. Hal ini disebut konstan diketik. Hal ini memungkinkan Anda untuk memaksa Delphi menggunakan tipe untuk konstanta yang sesuai dengan kebutuhan Anda. Ohterwise, itu akan membuat keputusan itu sendiri.
 

Senyawa tipe data
Jenis data sederhana seperti elemen tunggal. Delphi menyediakan jenis senyawa data, terdiri dari koleksi jenis data sederhana.
 
Ini memungkinkan programmer untuk mengelompokkan berbagai variabel, dan memperlakukan kelompok ini sebagai sebuah variabel tunggal. Ketika kita membahas logika pemrograman, Anda akan melihat bagaimana ini bisa berguna.
 
array
Koleksi array diakses dengan indeks. Sebuah array menyimpan data dalam indeks 'slot'. Slot masing-masing memegang satu variabel data. Anda dapat memvisualisasikan mereka sebagai daftar. Sebagai contoh:
 var
   Suits : array[1..4] of String;    // A list of 4 playing card suit names
 
 begin
   Suits[1] := 'Hearts';    // Assigning to array index 1
   Suits[2] := 'Diamonds';  // Assigning to array index 2
   Suits[3] := 'Clubs';     // Assigning to array index 3
   Suits[4] := 'Spades';    // Assigning to array index 4
 end;

Array yang didefinisikan di atas memiliki indeks 1 sampai 4 (1 .. 4). Dua titik menunjukkan kisaran. Kami telah memberitahu Delphi yang elemen array akan menjadi variabel string. Kami sama-sama bisa didefinisikan bilangan bulat atau desimal.
 
Untuk lebih lanjut tentang array, lihat tutorial Array.
 
arsip
Rekaman adalah seperti array dalam bahwa mereka terus koleksi data. Namun, catatan dapat menyimpan campuran tipe data. Ther adalah fitur yang sangat kuat dan bermanfaat dari Delphi, dan satu yang membedakan Delphi dari bahasa lainnya.
 
Biasanya, Anda akan menentukan struktur catatan Anda sendiri. Definisi ini tidak sendiri variabel. Hal ini disebut tipe data (lihat Jenis untuk lebih lanjut tentang ini). Ini didefinisikan dalam bagian tipe data. Dengan konvensi, tipe record dimulai dengan T untuk menunjukkan bahwa itu adalah jenis bukan data nyata (jenis seperti template). Mari kita mendefinisikan sebuah catatan pelanggan:
type
   TCustomer Record
     firstName : string[20];
     lastName  : string[20];
     age       : byte;
   end;
Perhatikan bahwa string bersufiks dengan [20]. Ini memberitahu Delphi untuk membuat ruang tetap untuk mereka. Karena string dapat menjadi panjang variabel, kita harus memberitahu Delphi sehingga dapat membuat catatan dari ukuran diketahui. Rekaman satu jenis selalu mengambil ruang memori yang sama.
 
Mari kita membuat variabel catatan dari jenis catatan dan menetapkan untuk itu:
 var
   customer : TCustomer;            // Our customer variable
 begin
   customer.firstName := 'Fred';    // Assigning to the customer record
   customer.lastName  := 'Bloggs';
   customer.age       := 55;
 end;
 customer.firstName is now set to 'Fred'
 customer.lastName  is now set to 'Bloggs'
 customer.age       is now set to 55
Perhatikan bagaimana kita tidak menggunakan indeks untuk mengacu ke elemen record. Catatan sangat ramah - kami menggunakan elemen catatan dengan namanya, dipisahkan dari nama rekor oleh sebuah titik kualifikasi. Lihat tutorial Records untuk lebih lanjut tentang catatan.
 
objek
Objek adalah koleksi data dan logika. Mereka seperti program, tetapi juga seperti struktur data. Mereka adalah bagian penting dari sifat berorientasi Obyek dari Delphi. Lihat tutorial orientasi objek untuk lebih lanjut tentang topik ini maju.
 

Type Data lain
Jenis objek tersisa utama dalam Delphi adalah merupakan sekelompok campuran dari :
 
file
Variabel file merupakan file komputer disk. Anda dapat membaca dari dan menulis ke file ini menggunakan rutin akses file. Ini adalah topik yang kompleks tertutup Berkas.
 
pointer
Pointer adalah juga subyek dari topik yang canggih - lihat referensi Pointer. Mereka memungkinkan variabel yang akan langsung dirujuk.
 
varian
Varian juga merupakan topik lanjutan - lihat Varian. Mereka memungkinkan penanganan Delphi jenis normal kaku yang harus dihindari. Gunakan dengan hati-hati!
 

definisi Type/Jenis
Ketika kita membahas Catatan atas, kita memperkenalkan konsep jenis. Delphi memiliki banyak jenis data yang telah ditetapkan - baik senyawa sederhana, seperti string, dan, seperti TPoint (yang memegang X dan Y koordinat butir a). Lihat Tipe untuk rincian lebih lanjut.




0 komentar:

Posting Komentar