Aufzählungen mit Swift

In der Welt der Swift, können Sie zu überdenken, wie Sie Aufzählungen verwenden. Während in C, Strukturen und Aufzählungen sind als einfache Typen häufig verwendet (das heißt, mehr oder weniger als eine Möglichkeit der Tastatureingaben oder die Organisation den Code zu speichern), Strukturen, Aufzählungen und Klassen in Swift sind alle Objekt # 8208 orientierte erste # 8208 -Klasse-Typen.

Dementsprechend dann in der Welt der Swift, ist es üblich, zu verweisen Instanzen von Strukturen und Aufzählungen, sowie Instanzen von Klassen.

Wenn eine Instanz einer Struktur oder Aufzählung von einer Code-Komponente an die nächste weitergegeben wird, wird es von Wert übergeben, während Instanzen von Klassen als Referenz übergeben werden. Um es einen anderen Weg, sind Instanzen von Strukturen und Aufzählungen auf den Stapel gelegt, während Instanzen von Klassen auf dem Heap platziert werden.

Für Entwickler, die daran interessiert sind, was das bedeutet für sie und ihre Anwendung, bedeutet dies, dass, wenn Sie eine eindeutige Kopie einer Struktur oder Aufzählung um in Ihrer Anwendung übergeben, wird diese Instanz tatsächlich um bewegt, und jede Funktion oder einem anderen Segment des Codes, die sie berührt die Instanz berührt, was sich bewegt. Wenn ein Codesegment eine Änderung der Instanzdaten macht, hat dies keine Auswirkungen anderen Fällen.

Wenn Sie eine Instanz einer Klasse übergeben, wird die Instanz unter den Codeabschnitte geteilt, auf die sie übergeben wird (das ist, weil der Regel hinter den Kulissen nur Sie einen Zeiger auf die Instanz übergeben). Wenn Sie eine Änderung an einer Eigenschaft einer Instanz der Klasse machen, aber jeder, der diese Instanz benutzt sieht, dass der Wandel.

Menü