2016-04-28 11 views
0

私は公式のスウィフト文書「スウィフトプログラミング言語(スウィフト2.2)」を読んでいます。 のトピックでの下にベースセクション 私はイニシャライザとは関係があります以下の説明が見つかりました。イニシャライザとはどういう意味ですか?それはプロセスか、それとも名詞ですか?

「は、以下の例がintに文字列を変換しようとする初期化子を使用しています

let possibleNumber = "123" 
let convertedNumber = Int(possibleNumber) 

初期化子が失敗することがありますので、それはむしろのIntよりも、オプションのIntを返します。」

イニシャライザが何を意味するのだろうか。それはオブジェクトであり、変換後の数字はで、実際にはイニシャライザまたは文字列"123"であるか、またはプロセス全体をイニシャライザと呼びます。誰かが私のためにそれを説明できますか?

どうもありがとう

S1の

+0

' INT(...) 'についての詳細を理解するために、このdocumentsをお読みくださいは、初期化子です。 – luk2302

+0

@ luk2302 Int(...)はイニシャライザであり、オプションのInt値をオブジェクト "convertedNumber"に初期化します – SLN

+0

かなりそうです。 – luk2302

答えて

3

convertedNumberオブジェクトです。 Int(...)は実際にconvertedNumberオブジェクトを初期化します。 StringIntの変換が成功するとは限りません。convertedNumberはオプションです。

0

イニシャライザは、作成後にオブジェクトを初期化し、データメンバーの初期値を設定するために使用されるメソッドです。すべてのクラスは、オブジェクトを初期化するためにイニシャライザにイニシャライザを持たせる必要があります。

あなたのケースでは、Int("")は、文字列を受け取り、try(文字列はint型に変換することはできませんので、オプションです)を使用してIntオブジェクトに変換する初期化メソッドです。それは最終的に `Int`を初期化するので

初期化子

+1

* initialization *はプロセスです。 *イニシャライザ*はプロセスではありません。 – Sulthan