class CurrencyConverter {
// 1
private let conversionRate = 1.3
// 2
private static let conversionRate = 1.3
func convertToForeign(fromlocal local: Double) -> Double {
return local * CurrencyConverter.conversionRate
}
}
let c = CurrencyConverter()
print(c.convertToForeign(fromlocal: 5))
With reference to the code snippet above, assume that I need to use the constant conversionRate ONLY in an instance method.
What are the pros & cons of declaring conversionRate as only (1)let vs (2)static let ?
Which style would be more readable & optimised?
Additionally, let's say I will only need 1 short lived instance of CurrencyConverter and conversionRate itself is bulky (an array of 10K Doubles). Will (1)let conversionRate be more memory optimised?