Latest web development tutorials

C # struktur (struct)

Dalam C #, struktur adalah jenis nilai struktur data. Hal ini memungkinkan variabel tunggal dapat menyimpan data yang terkait dengan berbagai jenis data.struct kata kunci digunakan untuk membuat struktur.

Struktur digunakan untuk mewakili rekor. Misalkan Anda ingin melacak buku-buku perpustakaan yang dinamis. Anda mungkin ingin melacak setiap buku dari atribut berikut:

  • judul
  • penulis
  • subyek
  • buku ID

struktur definisi

Untuk menentukan struktur, Anda harus menggunakan pernyataan struct. Pernyataan struct untuk program mendefinisikan tipe data baru dengan lebih dari satu anggota.

Misalnya, Anda dapat mendeklarasikan struktur cara Book berikut:

struct Buku
{
   title public string;
   Penulis public string;
   Subjek public string;
   public int book_id;
};  

Program berikut menunjukkan penggunaan struktur:

menggunakan System;
     
struct Buku
{
   title public string;
   Penulis public string;
   Subjek public string;
   public int book_id;
};  

public class testStructure
{
   public static void Main (string [] args)
   {

      Buku Book1; / * deklarasi Book1, Jenis Buku * /
      Buku Book2; / * deklarasi Book2, Jenis Buku * /

      / * Buku 1 merinci * /
      Book1.title = "C Programming";
      Book1.author = "Nuha Ali"; 
      Book1.subject = "C Programming Tutorial";
      Book1.book_id = 6.495.407;

      / * Buku 2 RINCI KETERANGAN * /
      Book2.title = "Telecom Penagihan";
      Book2.author = "Zara Ali";
      Book2.subject = "Telecom Penagihan Tutorial";
      Book2.book_id = 6.495.700;

      / * Cetak informasi Book1 * /
      Console.WriteLine ( "Buku 1 judul: {0}", Book1.title);
      Console.WriteLine ( "Buku 1 penulis: {0}", Book1.author);
      Console.WriteLine ( "Buku 1 subjek: {0}", Book1.subject);
      Console.WriteLine ( "Buku 1 book_id: {0}", Book1.book_id);

      / * Cetak informasi Book2 * /
      Console.WriteLine ( "Buku 2 title: {0}", Book2.title);
      Console.WriteLine ( "Buku 2 Penulis: {0}", Book2.author);
      Console.WriteLine ( "Buku 2 subjek: {0}", Book2.subject);
      Console.WriteLine ( "Buku 2 book_id: {0}", Book2.book_id);       

      Console.ReadKey ();

   }
}

Ketika kode di atas dikompilasi dan dijalankan, menghasilkan hasil sebagai berikut:

Buku 1 judul: C Programming
Buku 1 penulis: Nuha Ali
Buku 1 subjek: C Programming Tutorial
Buku 1 book_id: 6495407
Buku 2 judul: Penagihan Telecom
Buku 2 Penulis: Zara Ali
Buku 2 subjek: Telecom Tutorial Penagihan
Buku 2 book_id: 6495700

Fitur C # Struktur

Anda telah menggunakan struktur sederhana yang disebut Buku. struktur yang berbeda di C # dan struktur tradisional C atau C ++. C # dalam karakteristik struktur:

  • Struktur mungkin memiliki metode, bidang, indeks, properti, operator, metode, dan acara.
  • Struktur dapat didefinisikan konstruktor, tetapi Anda tidak dapat menentukan destructor. Namun, Anda tidak dapat menentukan konstruktor default untuk struktur. Konstruktor default secara otomatis ditetapkan dan tidak dapat diubah.
  • Tidak seperti kelas, struktur tidak dapat mewarisi dari struktur atau kelas-kelas lain.
  • Struktur tidak dapat dipakai sebagai dasar Struktur lainnya atau kelas.
  • Struktur dapat menerapkan satu atau lebih interface.
  • anggota struktur tidak dapat ditunjuk sebagai abstrak, virtual atau dilindungi.
  • Ketika Anda membuat objek konfigurasimenggunakan operator baru,ia akan memanggil constructor yang sesuai untuk membuat struktur. Tidak seperti kelas, struktur tidak dapat menggunakan operator baru yang akan dipakai.
  • Jika Anda tidak menggunakan operator baru, hanya setelah semua field yang diinisialisasi, lapangan hanya tugas, benda itu hanya untuk digunakan.

Kelas vs struktur

Kelas dan struktur memiliki perbedaan dasar sebagai berikut:

  • Kelas referensi jenis, struktur adalah jenis nilai.
  • Struktur tidak mendukung warisan.
  • Struktur tidak dapat mendeklarasikan konstruktor default.

Untuk pembahasan di atas, mari kita menulis ulang contoh sebelumnya:

menggunakan System;
     
struct Buku
{
   title private string;
   Penulis private string;
   Subjek private string;
   private int book_id;
   kekosongan GetValues ​​publik (string t, string, string s, int id)
   {
      title = t;
      Penulis = a;
      = Subjek s;
      book_id = id;
   }
   display public void ()
   {
      Console.WriteLine ( "Judul: {0}", judul);
      Console.WriteLine ( "Penulis: {0}", penulis);
      Console.WriteLine ( "Subject: {0}", subjek);
      Console.WriteLine ( "Book_id: {0}", book_id);
   }

};  

public class testStructure
{
   public static void Main (string [] args)
   {

      Buku Book1 = buku baru (); / * deklarasi Book1, Jenis Buku * /
      Buku Book2 = buku baru (); / * deklarasi Book2, Jenis Buku * /

      / * Buku 1 merinci * /
      Book1.getValues ​​( "C Programming",
      "Nuha Ali", "C Programming Tutorial", 6495407);

      / * Buku 2 RINCI KETERANGAN * /
      Book2.getValues ​​( "Telecom Penagihan",
      "Zara Ali", "Telecom Penagihan Tutorial", 6495700);

      / * Cetak informasi Book1 * /
      Book1.display ();

      / * Cetak informasi Book2 * /
      Book2.display (); 

      Console.ReadKey ();

   }
}

Ketika kode di atas dikompilasi dan dijalankan, menghasilkan hasil sebagai berikut:

Judul: C Programming
Penulis: Nuha Ali
Subject: C Programming Tutorial
Book_id: 6495407
Judul: Telecom Penagihan
Penulis: Zara Ali
Subjek: Telecom Tutorial Penagihan
Book_id: 6495700