【Swift】構造体について(1)

Swiftにおける構造体とクラスの違い

  • 構造体・・・呼び出しや代入の際に実体がコピーされる。 propertyもmethodも書ける。
  • クラス・・・複数の箇所から同じ実体を参照できる。

 

Initializer

 

  • default initializer・・・プロパティに初期値を設定している場合、引数無しでインスタンス生成を行える。
  • memberwise initializer・・・各プロパティに初期値を設定していない場合、引数としてすべてのメンバーを渡して初期化する。

 

初期値なし

初期値あり

初期値ありなしが混在

 
 
 
 
 

独自Initializerを定義する

initというメソッドを用意することで、構造体独自の初期化処理を書くことができる。

initメソッドをオーバーロードすることもできる。

 
 
 
 
 

ネストした構造体

特定の構造体の中でしか使用しない構造体は、構造体のネスト構造体として定義することができる。

You must be logged in to post a comment.

Proudly powered by WordPress   Premium Style Theme by www.gopiplus.com