How do I use value types for performance in Swift?

In Swift, value types such as structs and enums offer performance benefits due to their stack allocation and copy-on-write behavior. When you use value types, each instance maintains its own unique copy, leading to safety and predictability in multi-threaded scenarios.

Here's a simple example of using a struct as a value type:

struct Point { var x: Int var y: Int func movedBy(dx: Int, dy: Int) -> Point { return Point(x: x + dx, y: y + dy) } } var pointA = Point(x: 1, y: 2) var pointB = pointA.movedBy(dx: 3, dy: 4) print("Point A: (\(pointA.x), \(pointA.y))") // Point A: (1, 2) print("Point B: (\(pointB.x), \(pointB.y))") // Point B: (4, 6)

Swift Value Types Performance Structs Enums Stack Allocation Copy-on-Write Multi-threading