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 Build a Simple iPhone App with Swift Getting Started with iOS Development Swift Recap Part 1

"Your code could not be compiled" even though there are no errors in my preview and it works perfectly fine in Xcode?

I don't see any syntax errors. Maybe there's a logic error? I don't know why I can't complete this exercise. This exact same code is working fine in Xcode.

structs.swift
struct Tag {
  let name: String
}

struct Post {
  let title: String
  let author: String
  let tag: Tag

  func description() {
    print("\(title) by \(author). Filed under \(tag)")
  }
}

let firstPost = Post(title: "Test", author: "Will", tag: Tag(name: "Tag"))

let postDescription = firstPost.description()

2 Answers

Hi William,

In your description string for tag, you want to interpolate \(tag.name) not just \(tag).

Steve.

andren
andren
28,558 Points

In addition the task requests that the string should be returned, not printed. So William has to change the description method to return the string.

Sorry - also missed the fact that your description function didn't return a String and you printed the output, rather than returning it.

Amend your description method to:

  func description() -> String {
    return "\(title) by \(author). Filed under \(tag.name)"
  }

That returns a string in its signature and then returns a string in its body as required by the challenge.

Steve.

Got that, andren - done at the same time. Good spot!!

Haha, whoops! I definitely took an odd route there. Time to practice my Swift basics :P

Thanks for the help!

:+1: :smile: