LoginSignup
13

More than 5 years have passed since last update.

Swiftに関するメモ その8 - ネストされた型

Last updated at Posted at 2014-06-18

https://developer.apple.com/swift/ より

The Swift Programming Language (iBooks Store)をざっくり目を通してつらつらと。

ネストされた型宣言 (Nested Types)

クラスや構造体の中で、独自のクラスや構造体、列挙型を定義することができます。

基本形:

class SomeClass {
  class InternalClass {
  }
  enum InternalEnum {
  }
  struct InternalStructure {
  }
}

それらはもちろん内部で変数や定数に利用できます。

class SomeClass {
  class InternalClass {
  }
  enum InternalEnum {
  }
  struct InternalStructure {
  }
  var aClass : InternalClass?
  var anEnum : InternalEnum?
  var aStruct : InternalStructure?
}

ネストされた型を参照する

. を使って内部で宣言されたクラス、構造体などにアクセスすることができます。

class SomeClass {
  enum InternalEnum {
    case someValue
  }
}

let value = SomeClass.InternalEnum.someValue

以下、余談

とりあえず、ここまでで残っているセクションが

  • Extensions : (クラス・構造体・列挙型の) 拡張
  • Protocols : プロトコル
  • Generics : ジェネリクス
  • 特殊な演算子

なんですが、分量にして全体のおおよそ 1/3 程度にもなってしまうかなりボリュームのある内容です。ざっくりとは眺めておきたいところではあるんですが……。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13