Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

iOS Object-Oriented Swift Complex Data Structures Adding Instance Methods

object oriented swift

Given the struct below in the editor, we want to add a method that returns the person’s full name. Declare a method named fullName() that returns a string containing the person’s full name. Note: Make sure to allow for a space between the first and last name

structs.swift
struct Person {
    let firstName: String
    let lastName: String
  ///personFirstName fname: String = firstName, personLastName lname: String = lastName
  func fullName() -> String {


      let FullName = Person(firstName: "Hyndavi", lastName: "uppala")


    var results =  firstName + " " + lastName

    return results
}
    let FullName = Person(firstName: "Hyndavi", lastName: "uppala")



  FullName.fullName()

3 Answers

Some hints:

  • Only do what the challenge asks. For task 1 delete the lines outside the Person struct
  • You are missing a closing bracket
  • let FullName = Person(firstName: "Hyndavi", lastName: "uppala") doesn't make sense inside your fullName method and should also be removed

what about this ...

struct Person { let firstName: String let lastName: String

func fullName() -> String { var results = firstName + " " + lastName

return results

} let FullName = Person(firstName: "Hyndavi", lastName: "uppala")

FullName.fullName()

}

struct Person { let firstName: String let lastName: String

func fullName() -> String {
    var results =  firstName + " " + lastName

    return results
}  

}

let FullName = Person(firstName: "Regina", lastName: "Phalange") FullName.fullName()

You are getting close. Your code meets the requirements for task 1.

struct Person {
         let firstName: String
         let lastName: String

         func fullName() -> String {
              var results =  firstName + " " + lastName
             return results
         }  
}

With your remaining code substitute aPerson for FullName and then assign aPerson.fullName() to myFullName and you're done