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 trialDavid Plakon
2,070 PointsWhy is - return "\(title) by \(author). Filed under \(tag)" - returning "A by B. Filed under Tag(name: "C")"
Why is - return "(title) by (author). Filed under (tag)" - returning "A by B. Filed under Tag(name: "C")"
struct Tag {
let name: String
}
struct Post {
let title: String
let author: String
let tag: Tag
func description() -> String {
return "\(title) by \(author). Filed under \(tag)"
}
}
let firstPost = Post(title: "A", author: "B", tag: Tag(name: "C"))
let postDescription = firstPost.description()
2 Answers
Michael Reining
10,101 PointsHi David,
You have a small mistake in your description method. You are returning the tag but what you need to return is the Tag.name
See here
struct Tag {
let name: String
}
struct Post {
let title: String
let author: String
let tag: Tag
func description() -> String {
return "\(title) by \(author). Filed under \(tag.name)" // return tag.name
}
}
let firstPost = Post(title: "iOS Development", author: "Apple", tag: Tag(name: "swift"))
let postDescription = firstPost.description()
I hope that helps,
Mike
PS: Thanks to the awesome resources on Team Treehouse, I launched my first app.
Now you can practice writing Swift code directly on your iPhone. You can try the app by clicking on the link below. :-)
David Plakon
2,070 PointsYeah, finally figured that out. Thanks a bunch!