Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS Object-Oriented Swift Value vs Reference Types Structs vs Classes

Joshua Rystedt
Joshua Rystedt
4,086 Points

Struct or Enum

I am tracking with what Amit is teaching about reference types verses value types. However, I am still unsure about what the advantage of a Struct is over an Enum (if any). So far I find Enums easier to use. Why should I use a Struct instead?

1 Answer

Iain Diamond
Iain Diamond
29,379 Points

If you want to create a new type containing items with the same type you would use an enum, whereas structs are able to contain items of differing types, e.g.

enum Day : Int { case Monday = 1, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday }

struct Hobbit {
    var firstName: String = "Bilbo"
    var lastName: String = "Baggins"
    var age: Int = 111
    var salary: Double = "11.11"
}

Hope this helps, iain