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 Classes and Objects Classes and Their Methods

How to call this particular method?

So, i copied this Class over into my Xcode, and created an instance called "room". I tried the dot syntax and it seems as though it can't find the method. i'm not getting any errors in the Class. If you can provide help in any way, that would be much appreciated! thank you!

Button.swift
class Button {
  var width: Double
  var height: Double

  init(width:Double, height:Double){
    self.width = width
    self.height = height


func incrementBy(points: Double) -> Void {
    self.width += points
    self.height += points
}
  }
}

2 Answers

Daniel Sattler
Daniel Sattler
4,867 Points

Your closing curly bracket for the init method is misplaced ;-)

Take it away from behind incrementBy function and set it before... so it looks some like this:

class Button {
  var width: Double
  var height: Double

  init(width:Double, height:Double){
    self.width = width
    self.height = height
  }
  func incrementBy(points:Double){
    width += points 
    height += points 
  }
}

OH! I'm dumb xD Thank you sir! Now I'll know to check for that xP

Is it necessary to return a type Void on the incrementBy method if you reference width and height using self within the body of the function, as Garrett did in his code?

Daniel Sattler
Daniel Sattler
4,867 Points

nope, you are NOT dumb... happens every now and then for EVERYONE... trust me ;-) hehe

sometimes i spend an hour or more debugging just to find out i forgot or misplaced something somewhere... :-P