Skip to content

Instantly share code, notes, and snippets.

@niwatako
Created March 12, 2016 05:09
Show Gist options
  • Select an option

  • Save niwatako/59bd4d94841aa84fee57 to your computer and use it in GitHub Desktop.

Select an option

Save niwatako/59bd4d94841aa84fee57 to your computer and use it in GitHub Desktop.
inline lazy var #catchswift #cocoa_kansai #CodePiece
class MyClass {
lazy var calculate1: () -> Int = self.calculate
lazy var calculate2: () -> Int = {
self.calculate()
}()
}
// calculate1 は 型 () -> Int より、calculate2と同じ、クロージャーが代入される。見た目はselfをキャプチャしていないかのように見えてしまうけど、calculate2がselfに循環参照を起こすのと同じように、calculate1も循環参照を生む。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment