Type Inference
1. Type Inference (ํ์ ์ถ๋ก )
- ์์ ํน์ ๋ณ์์ ์๋ฃํ์ ๋ฐ๋ก ๋ช ์ํด ์ฃผ์ง ์๊ณ , ๊ฐ์ ์ด๊ธฐํ ํ๋ ๊ฒฝ์ฐ Compiler๊ฐ ํ์(์๋ฃํ)์ ์ถ๋ก ํ์ฌ Default ์๋ฃํ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฒฐ์ ํจ
let num = 1 // Int.Type
let num2 = 1.0 // Double.Type
let str = "Swift" // String.Type
let isValid = true // Bool.Type
let isValid = false // Bool.Type
- ๋จ, ์๋ฃํ์ ์ง์ ์ง์ ํด ์ฃผ์ง ์๊ณ , ์ด๊ธฐ๊ฐ์ ์ ์ฅํ์ง ์๋ ๊ฒฝ์ฐ๋ Compiler๊ฐ ํ์(์๋ฃํ) ์ถ๋ก ์ ํ ์ ์๊ธฐ ๋๋ฌธ์
๋ฐ๋์ ์๋ฃํ์ ์๋ต ํ๋ ค๋ฉด ์ด๊ธฐ๊ฐ์ ํ ๋น ํด์ผ ํจ
2. Type Annotation
- ์๋ฃํ์ ์ง์ ์ง์ ํ๋ ๋ฌธ๋ฒ
- ์๋ฃํ์ ์ง์ ํด์ฃผ์ง ์์ผ๋ฉด ํ์์ ์ถ๋ก ํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ๋น์ฉ์ด ๋ฐ์ํ๊ธฐ ๋๋ฌธ์, Type Annotation์ ํ๊ฒ ๋๋ฉด Compile ์๊ฐ์ ๋จ์ถ ์ํฌ ์ ์์
let constant: Type = value
var variable: Type = value
'iOS Study > Swift Study' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Data Type With Memory (0) | 2022.05.03 |
---|---|
Scope (0) | 2022.05.03 |
Variables and Constants (0) | 2022.04.29 |
Swift Source Code Build (0) | 2022.04.28 |
Swift์์์ Call By Value vs Call By Reference (0) | 2022.03.12 |