swift struct init
//Basically, initialization is giving new values to 
//A new instance of a struct
//Let's take an example of a struct
struct Celsius {
  var temperature: Double
}
//If we try to declare a new instance of this struct
var celsiusInstance = Celsius(//requires temperature parameter)
//There will be an error.
//Swift raises an argument, complaining that there is no variable stored
//For the temperature variable.
  
//You have to do this
 
var celsiusInstance = Celsius(temperature: 10) //required since there is no default value and you have to 
//Declare it yourself
//However, if we add an intializer to the struct
struct Celsius {
  var temperature: Double
  init() {
	temperature = 0
  }
}
//We can simply declare a new instance of this struct without needing to
//Specifically include the temperature parameter
  
var celsiusInstance = Celsius()
  
//Swift will not complain or spit out any errors.
//Since we did not explicitly declare what the temperature parameter would store,
//Swift uses the initializer as the default value, and checks for the temperature variable
//It sees that temperature = 0, and thus declares the new instance with 0 as the temperature variable
  
//That is generally the basics of initializers
//For more info, go here https://docs.swift.org/swift-book/LanguageGuide/Initialization.html
