Énumérations avec SWIFT

Dans le monde de Swift, vous voudrez peut-être repenser la façon dont vous utilisez les énumérations. Alors que dans C, structures et énumérations sont souvent utilisés comme des types simples (qui est, plus ou moins comme un moyen d'économiser de frappes ou d'organiser le code), les structures, les énumérations et les classes à Swift sont tous les objets # 8208-orienté première # 8208 types-Class.

En conséquence, alors, dans le monde de Swift, il est fréquent de se référer à instances des structures et des dénombrements, ainsi que des instances de classes.

Quand une instance d'une structure ou une énumération est transmis d'une composante de code à un autre, il est passé par valeur, tandis que les instances de classes sont passés par référence. En d'autres mots, les instances de structures et énumérations sont placés sur la pile, alors que des instances de classes sont placés sur le tas.

Pour les développeurs intéressés par ce que cela signifie pour eux et leur application, cela signifie que lorsque vous passez une copie unique d'une structure ou d'énumération autour de votre application, cette instance est effectivement déplacé, et chaque fonction ou d'un autre segment de code qui la touche touche l'instance qui se déplace. Quand on segment de code apporte une modification aux données d'instance, elle ne touche pas d'autres cas.

Lorsque vous passez une instance d'une classe, cette instance est partagée entre les sections de code à laquelle elle est passée (qui est généralement parce que les coulisses vous ne passez un pointeur à l'instance). Si vous apportez une modification à une propriété d'une instance de classe, cependant, tout le monde qui utilise cette instance voit ce changement.


» » » » Énumérations avec SWIFT