#関数の引数に既定値を指定
決まった値が指定されている引数がある時に既に数値を入れてしまうこと。
〜特徴〜
同時にinoutの指定はできない。
関数の引数に既定値を指定する場合仮引数名(内部引数名)が自動的に外部引数名になる。
自動的に内部引数名=外部引数名となっているため「#」を指定することはできない。
既定値の数値を変更する時以外は呼び出す時に省略可能。
##構造体
構造体は値型のデータ。代入や関数の呼び出しの際、つまり、データの実態がコピーされて、新しいインスタンスが渡される。構造体のデータの実態は常にプログラム内のどこか一箇所から参照されているだけ。複数箇所から同じ実態を参照する必要のあるデータ構造やプログラムの構成要素を作る目的にはクラスを使う。
/////////クラスについては後ほど
1.既定イニシャライザ
構造体の定義自体にプロパティの全ての初期値が与えられているもの。
例
code
struct Time {
var Hour = 7 //プロパティとはこの変数のこと
var Minutes = 30
var Second = 57
} //初期値(プロパティ)が全て引数とされることなく与えられている。
2.イニシャライザ
構造体のインスタンス生成の際、初期化のために使用する手続きのこと。イニシャライザは構造体ごとに定義可能。
イニシャライザは値を返さない関数のような形で構造体の内部に定義するが、funcや関数名は書かず、initを記述してイニシャライザであることを明示。