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 2.0 Classes Instances of Classes

What am i doing wrong here??

I have no idea where im going wrong here

classes.swift
// Enter your code below

class Shape {
var numberOfSides: Int
init(numberOfSides: Int) {
self.numberOfSides = numberOfSides
}
var someShape = Shape
}

I see a couple issues. (1) It appears your someShape object is being instantiated inside the Shape class. Move that outside of the last curly brace. (2) your init statement requires an Int to initialize the numberOfSides of that object. You need to provide an Int when trying to create a Shape object.

Hope that helps.

2 Answers

Hi Sam,

If you move the someShape line outside of the class braces, that'll work better.

And, when you call a new Shape instance, you want to pass in a number of sides. Something like:

class Shape {
  var numberOfSides: Int

  init(numberOfSides: Int) {
    self.numberOfSides = numberOfSides
  }
} // end the class here

let someShape = Shape(numberOfSides: 4)

I hope that helps,

Steve.

Bashir Sentongo
Bashir Sentongo
3,769 Points

The instance you have created is missing an argument. You have to pass in the number of slides as stated above. Remember the initializer helps us initialize values when we create instances