(ํจ์) ์ค๋ฒ๋ก๋ฉ
์ค๋ฒ๋ก๋ฉ์ ์ง์๋์ง ์์ต๋๋ค:
- ๊ฐ๋ณํจ์๋ ๋จ์ผ ๊ตฌํ๋ง ๊ฐ์ต๋๋ค:
- ํญ์ ๊ณ ์ ๋ ์์ ํ๋ผ๋งคํฐ๋ง ๊ฐ์ต๋๋ค.
- ํ๋ผ๋งคํฐ๋ค์ ํ์ ์ ํญ์ ๊ณ ์ ๋์ด ์์ต๋๋ค.
- ํ๋ผ๋งคํฐ์ ๊ธฐ๋ณธ ๊ฐ์ ์ง์๋์ง ์์ต๋๋ค:
- ๋ชจ๋ ํธ์ถ๋ถ์์๋ ๋์ผํ ์์ ์ธ์๋ฅผ ์ค์ ํด์ผํฉ๋๋ค.
- ์ด๋ฐ ์ฌํญ๋ค์ด ์ ์ฝ์ด ๋ ๊ฒฝ์ฐ, ๋์์ผ๋ก ๋งคํฌ๋ก๋ฅผ ์ฌ์ฉํ๊ธฐ๋ ํฉ๋๋ค.
ํ์ง๋ง, ํจ์์ ๋งค๊ฐ๋ณ์๋ ์ ๋ค๋ฆญ์ ์ ์ฉํ ์ ์์ต๋๋ค:
fn pick_one<T>(a: T, b: T) -> T { if std::process::id() % 2 == 0 { a } else { b } } fn main() { println!("coin toss: {}", pick_one("heads", "tails")); println!("cash prize: {}", pick_one(500, 1000)); }
- ์ ๋ค๋ฆญ์ ์ฌ์ฉํ ๋ ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์
Into<T>
์ ํ์ ์ ๋ํ ๋คํ์ฑ์ ์ ๊ณตํ ์ ์์ต๋๋ค. ๋์ค์ ์์ธํ ์ค๋ช ํ๊ฒ ์ต๋๋ค.