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 Complex Data Structures Custom Initializers

Trent Ungard
Trent Ungard
10,533 Points

Am I Doing String Interpolation Wrong?

For this code challenge, I am supposed to be creating an initializer method for the struct "RGBColor", assigning values to the first 4 properties, and then creating a string (through interpolation) that lists out the values for the first 4 properties. I have this running in Xcode, and it seems to be working exactly as I'd expect it should be. When I call RGBColor, I pass in some doubles, and the description reads correctly.

The lesson is telling me to make sure I am using string interpolation to get the correct string for my description value. It seems to me like everything checks out, and I've been looking this up and down for any minor errors I may have missed for about half of an hour. What have I done wrong?

structs.swift
struct RGBColor {
  let red: Double
  let green: Double
  let blue: Double
  let alpha: Double

  let description: String

  // Add your code below

  init(red: Double, green: Double, blue: Double: alpha: Double) {
    self.red = red
    self.green = green
    self.blue = blue
    self.alpha = alpha

    description = "red: \(red), green: \(green), blue: \(blue), alpha: \(alpha)"
  }
}

1 Answer

In your parameters after blue: Double you have a colon instead of a comma

blue: Double:

should be

blue: Double,
Trent Ungard
Trent Ungard
10,533 Points

Wow. I can't believe I missed that. Thank you for saving my sanity!