Skip to content

Instantly share code, notes, and snippets.

@hoshi-takanori
Created July 31, 2016 07:37
Show Gist options
  • Save hoshi-takanori/07b2982c9942ebe186c530fa611921bb to your computer and use it in GitHub Desktop.
Save hoshi-takanori/07b2982c9942ebe186c530fa611921bb to your computer and use it in GitHub Desktop.
class Person {
let name: String
init(name: String) { self.name = name }
func printName() { print("name = \(name)") }
deinit { print("\(name) is being deinited") }
}
var p: Person? = Person(name: "Hoshi")
p?.printName() // name = Hoshi
unowned(unsafe) let q = p!
q.printName() // name = Hoshi
p = nil
//q.printName() // incorrect checksum for freed object - object was probably modified after being freed.
let pp = Person(name: "Takanori")
q.printName() // name = Takanori
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment