2016-04-27 85 views
0

類型推理是Swift的一個強大屬性。這意味着編譯器可以從程序員提供的值中推斷出文字的類型,因此不需要顯式類型說明。爲什麼字面值沒有類型?

例如var IntNum = 3;編譯器可以推斷變量IntNum是Int類型。在Xcode中,如果用戶點擊該鍵並點擊變量名稱,這裏IntNum,那麼Xcode會告訴你它是什麼類型。
但是,如果我在文字值3上做了這個,Xcode不提供任何內容。我猜,我放在屏幕上的字面值完全沒有類型,只有對象變量和常量具有類型屬性。

我只是猜測所以,有人可以解釋給我嗎?

乾杯 SL

回答

4

這是正確的。

the documentation

類型安全和類型推斷

類型推斷當聲明恆定的或可變 與初始值是特別有用的。這通常是通過將 字面值(或文字)分配給您聲明的點 上的常量或變量來完成的。 (A字面值是直接 出現在源代碼中的值)

...

如果你在表達結合整數和浮點文字,一個 型雙將從推斷上下文:

let anotherPi = 3 + 0.14159 
// anotherPi is also inferred to be of type Double 

的3字面值沒有明確的類型在其本身和,等等 雙適當的輸出類型是從 浮點存在推斷作爲加法的一部分。

相關問題