Latest web development tutorials

C # Struktur (Struct)

In C # ist die Struktur ein Wert Art der Datenstruktur. Es ermöglicht eine einzelne variable Daten können auf verschiedene Arten von Daten, die sich speichern.struct Schlüsselwort wird verwendet , um eine Struktur zu schaffen.

Struktur wird verwendet, um einen Datensatz darstellen. Angenommen, Sie dynamische Bibliothek Bücher verfolgen möchten. Sie können den Überblick über jedes Buch der folgenden Attribute behalten möchten:

  • Titel
  • Autor
  • Thema
  • Buch-ID

Definition Struktur

Um eine Struktur zu definieren, müssen Sie eine Struktur-Anweisung verwenden. struct Erklärung für das Programm definiert einen neuen Datentyp mit mehr als einem Mitglied.

Zum Beispiel können Sie die folgende Art und Weise Buch Struktur erklären:

struct Bücher
{
   public string title;
   public string Autor;
   public string Thema;
   public int book_id;
};  

Das folgende Programm zeigt die Verwendung der Struktur:

using System;
     
struct Bücher
{
   public string title;
   public string Autor;
   public string Thema;
   public int book_id;
};  

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

      Bücher Mappe1 / * Erklärung Mappe1 Typ Buch * /
      Bücher Book2 / * Erklärung Mappe2 Typ Buch * /

      / * Buch 1 Detaillierung * /
      Book1.title = "C-Programmierung";
      Book1.author = "Nuha Ali"; 
      Book1.subject = "C Programming Tutorial";
      Book1.book_id = 6.495.407;

      / * Book 2 Detaillierte Beschreibung * /
      Book2.title = "Telecom Billing";
      Book2.author = "Zara Ali";
      Book2.subject = "Telecom Billing Tutorial";
      Book2.book_id = 6.495.700;

      / * Drucken Mappe1 Informationen * /
      Console.WriteLine ( "Buch 1 Titel: {0}", Book1.title);
      Console.WriteLine ( "Buch 1 Autor: {0}", Book1.author);
      Console.WriteLine ( "Buch 1 Thema: {0}", Book1.subject);
      Console.WriteLine ( "Buch 1 book_id: {0}", Book1.book_id);

      / * Drucken Book2 Informationen * /
      Console.WriteLine ( "Buch 2 Titel: {0}", Book2.title);
      Console.WriteLine ( "Buch 2 Autor: {0}", Book2.author);
      Console.WriteLine ( "Buch 2 Thema: {0}", Book2.subject);
      Console.WriteLine ( "Buch 2 book_id: {0}", Book2.book_id);       

      Console.ReadKey ();

   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

Buch 1 Titel: C-Programmierung
Buch 1 Autor: Nuha Ali
Buch 1 Thema: C Programming Tutorial
Buch 1 book_id: 6495407
Buch 2 Titel: Telecom Billing
Buch 2 Autor: Zara Ali
Book 2 Thema: Telecom Billing Tutorial
Buch 2 book_id: 6495700

Eigenschaften C # Struktur

Sie haben eine einfache Struktur namens Bücher verwendet. Unterschiedliche Strukturen in C # und die traditionelle Struktur des C oder C ++. C # in den Struktureigenschaften:

  • Struktur können Methoden, Felder, Indizes, Eigenschaften, Operatoren, Methoden und Ereignisse.
  • Struktur kann Konstruktor definiert werden, aber man kann nicht eine destructor definieren. Sie können jedoch nicht über einen Standardkonstruktor für die Struktur definieren. Der Default-Konstruktor wird automatisch festgelegt und kann nicht verändert werden.
  • Im Gegensatz zu einer Klasse kann, die Struktur nicht von anderen Strukturen oder Klassen erben.
  • Struktur kann nicht als Grundlage Die andere Struktur oder Klasse dienen.
  • Struktur kann eine oder mehrere Schnittstellen implementieren.
  • Strukturelement kann nicht als abstrakt bezeichnet werden, virtuell oder geschützt.
  • Wenn Sie ein Konfigurationsobjekt mitdem neuen Betreiber zu erstellen, wird es den entsprechenden Konstruktor aufrufen , eine Struktur zu schaffen.Im Gegensatz zu einer Klasse, Strukturen können die neuen Betreiber nicht verwenden, um instanziert werden.
  • Wenn Sie nicht über den neuen Betreiber zu verwenden, erst nach alle Felder initialisiert werden, war das Feld nur Zuordnung, war das Objekt nur zu verwenden.

Klasse vs Struktur

Klassen und Strukturen haben die folgenden grundlegenden Unterschiede:

  • Die Klassen sind Referenztypen, die Struktur ist ein Werttyp.
  • Struktur nicht Vererbung unterstützen.
  • Struktur kann kein Standard-Konstruktor deklarieren.

Für die obige Diskussion, lassen Sie uns das vorherige Beispiel umschreiben:

using System;
     
struct Bücher
{
   private string title;
   private string Autor;
   private string Thema;
   private int book_id;
   public void getValues ​​(string t, string a, string s, int id)
   {
      title = t;
      Autor = a;
      subject = s;
      book_id = id;
   }
   public void display ()
   {
      Console.WriteLine ( "Titel: {0}", title);
      Console.WriteLine ( "Autor: {0}", Autor);
      Console.WriteLine ( "Betreff: {0}", Thema);
      Console.WriteLine ( "Book_id: {0}", book_id);
   }

};  

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

      Bücher Mappe1 = new Bücher (); / * Erklärung Mappe1 Typ Buch * /
      Bücher Book2 = new Bücher (); / * Erklärung Mappe2 Typ Buch * /

      / * Buch 1 Detaillierung * /
      Book1.getValues ​​( "C-Programmierung",
      "Nuha Ali", "C-Programmierung Tutorial", 6495407);

      / * Book 2 Detaillierte Beschreibung * /
      Book2.getValues ​​( "Telecom Billing",
      "Zara Ali", "Telecom Billing Tutorial", 6495700);

      / * Drucken Mappe1 Informationen * /
      Book1.display ();

      / * Drucken Book2 Informationen * /
      Book2.display (); 

      Console.ReadKey ();

   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

Titel: C-Programmierung
Autor: Nuha Ali
Betreff: C Programming Tutorial
Book_id: 6495407
Titel: Telecom Billing
Autor: Zara Ali
Betreff: Telecom Billing Tutorial
Book_id: 6495700