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

Melinda Caines
PLUS
Melinda Caines
Courses Plus Student 892 Points

How to I fix my initializer method?

The Preview is saying to not assign a variable to itself. How do I write this code?

classes.swift
// Enter your code below

class Shape{
  let numberOfSides: Int

   init(){
        self.numberOfSides = numberOfSides

   }
}

let someShape = Shape()

if you have access to Xcode it will help you to solve the problem from the IDE and then copy and past it into the site. because even in real world you will be corrected. While its still good practice not to get the aid of Xcode learning wise, if your in a run writing it there will keep you on track. hope that helps at all.

1 Answer

Alexander Smith
Alexander Smith
10,476 Points

close. this is how..

class Shape {
var numberOfSides: Int

  init(numberOfSides: Int) {
    self.numberOfSides = numberOfSides
  }
}

let someShape = Shape(numberOfSides: 4)

the self.numberOfSides connects to your variable outside the init method. then you set that equal to numberOfSides which is connected to your init (parameter). then when you create an instance, use your initialized parameter for shape