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 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