This really puzzles me: what is the difference between an implicitly unwrapped optional and the type itself?
For instance,
var s:String!
var s2: String
Don't these two exactly match? They represent a String that cannot be nil, so why on earth do we need! thing?
source
share