Latest web development tutorials

Swift Struktur

Swift-Struktur ist der Code verwendet, um eine gemeinsame und flexible Struktur zu bauen.

Wir können die Eigenschaften der Struktur (Konstanten, Variablen) definieren und fügen Methoden funktionale Struktur zu erweitern.

C und Objective C ist anders:

  • Struktur muss nicht mit der Implementierung-Datei und Schnittstellen umfassen.

  • Struktur ermöglicht es uns, eine einzelne Datei zu erstellen, und das System wird automatisch den Code für andere externe Schnittstellen erzeugen.

Struktur immer durch Übertragung in Code repliziert werden, so dass ihr Wert nicht geändert werden kann.

Grammatik

Wir definieren die Struktur durch das Schlüsselwort struct:

struct nameStruct { 
   Definition 1
   Definition 2
   ……
   Definition N
}

Beispiele

Wir definieren eine Struktur namens MarkStruct, Eigenschaften Struktur für Studenten drei Themen zu punkten, um den Datentyp Int:

struct MarkStruct{
   var mark1: Int
   var mark2: Int
   var mark3: Int
}

Wir können durch Strukturnamen auf eine Struktur kommen.

Beispiele für die Struktur , die die Schlüsselwortlet mit:

import Cocoa

struct studentMarks {
   var mark1 = 100
   var mark2 = 78
   var mark3 = 98
}
let marks = studentMarks()
print("Mark1 是 \(marks.mark1)")
print("Mark2 是 \(marks.mark2)")
print("Mark3 是 \(marks.mark3)")

Die obige Programmausführung Ausgabe ist:

Mark1 是 100
Mark2 是 78
Mark3 是 98

Beispiel, wir Zugang 'studentMarks' auf die Leistungen der Schüler durch den Strukturnamen. Strukturelement an mark1 initialisiert, mark2, mark3, Datentyp integer.

Wir verwenden dann die Schlüsselwortlet Struktur studentMarks () instanziiert und auf die Marken geführt.

Schließlich kamen wirWert Zahl , um die Strukturelement zuzugreifen.

Traditionellen Werten und Klonierung einer Struktur wird durch die folgenden Beispiele der Struktur instanziiert:

import Cocoa

struct MarksStruct {
   var mark: Int

   init(mark: Int) {
      self.mark = mark
   }
}
var aStruct = MarksStruct(mark: 98)
var bStruct = aStruct // aStruct 和 bStruct 是使用相同值的结构体!
bStruct.mark = 97
print(aStruct.mark) // 98
print(bStruct.mark) // 97

Die obige Programmausführung Ausgabe ist:

98
97

Anwendungsstruktur

In Ihrem Code können Sie Ihre benutzerdefinierten Datentyp Strukturen definieren.

Beispiele für die Struktur ist immer Ihre benutzerdefinierte Datentypen von Wert übergeben zu definieren.

Gemäß der allgemeinen Regel, wenn die Übereinstimmung mit einem oder mehreren der folgenden Kriterien, Gebäudestruktur berücksichtigen:

  • Der Hauptzweck der Struktur wird verwendet, um kleine Datenmengen zu verkapseln, um einfache Werte bezogen.
  • Zu erwarten, dass eine Strukturinstanz Abtretung oder Übertragung, die verkapselten Daten kopiert werden, nicht referenziert.
  • Jede Art von Eigenschaftswerten in der Struktur gespeichert, wird sie kopiert werden, nicht referenziert.
  • Die Struktur muss nicht Eigentum oder andere Typen zu erben Verhalten ist bereits vorhanden.

Zum Beispiel können die folgenden Situationen für die Verwendung der Struktur:

  • Geometrische Größe und Form der Verpackung eine width Eigenschaft und die height Eigenschaft, die beide Double - Typ.
  • Pfade innerhalb eines bestimmten Bereichs, ein Paket start Eigenschaften und length Eigenschaften, von denen beide Int - Typ.
  • Dreidimensionalen Koordinatensystem , das Paket x , y und z - Eigenschaften, sind drei Double Typ.

Beispiele für die Struktur wird durch Wert übergeben und nicht Bezug genommen wird.

import Cocoa

struct markStruct{
    var mark1: Int
    var mark2: Int
    var mark3: Int
    
    init(mark1: Int, mark2: Int, mark3: Int){
        self.mark1 = mark1
        self.mark2 = mark2
        self.mark3 = mark3
    }
}

print("优异成绩:")
var marks = markStruct(mark1: 98, mark2: 96, mark3:100)
print(marks.mark1)
print(marks.mark2)
print(marks.mark3)

print("糟糕成绩:")
var fail = markStruct(mark1: 34, mark2: 42, mark3: 13)
print(fail.mark1)
print(fail.mark2)
print(fail.mark3)

Die obige Programmausführung Ausgabe ist:

优异成绩:
98
96
100
糟糕成绩:
34
42
13

Das obige Beispiel definieren wir die Struktur markStruct, drei Mitglieder der Immobilie: mark1, mark2 und mark3. Struktur in vivo unter Verwendung von Elementeigenschaften Verwenden Sie den Selbst Schlüsselwort.

Aus den Beispielen können wir gut verstehen, die Strukturinstanz als Wert übergeben wird.