//์ฝ๋ ๋๋ฆฌ ๊ฐ์๋ฅผ ๋ณด๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค.
-> ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ template Alias ๋ด์ฉ ์ฐธ๊ณ ํ์.
: ๋ณ์นญ์ ๋ง๋๋ ํค์๋ (c์ธ์ด์์๋ถํฐ ์ฌ์ฉ๋)
- ์ํํ์ .
typedef ์ํํ์ ๋ณ์นญ์ด๋ฆ- ํจ์ ํฌ์ธํฐ์ ๊ฒฝ์ฐ
typedef (๋ฐํํ)(*๋ณ์นญ ์ด๋ฆ)(์ธ์ ์๊ทธ๋์ฒ)
: c++11์์ ๋์จ ๋ค๋ฅธ ๋ณ์นญ ํค์๋
typedef ๋ฅผ -> using ํค์๋๋ก ๋ฐ๊พธ์.
์๋ํ๋ฉด using๋ง์ ์ฅ์ ์ด ์์.
typedef์ ๊ฒฝ์ฐ๋ ์ผ๋ฐ ํ์ ์ผ๋ก ๋ณ์นญ์ ๋ง๋ค ์ ์์.
ํ ํ๋ฆฟ์ ๋ถ๊ฐ๋ฅํจ.
-> Point ๋ ํ์ ์ด ์๋ ํ ํ๋ฆฟ ์ด๊ธฐ ๋๋ฌธ์ ๋ถ๊ฐํจ.
- typedef๋ type๋ง ๋ณ์นญ์ผ๋ก ๋ง๋ค ์ ์๋ค!
- using์ type๋ฟ ์๋๋ผ template๋ ๋ณ์นญ์ผ๋ก ๋ง๋ค์ ์๋ค!
typedef : ์ผ๋ฐ ํ์ ์ ๋ํด์๋ง ๋ณ์นญ์ ๋ง๋ค ์ ์์.
using : ์ผ๋ฐ ํ์ ๋ฟ๋ง ์๋๋ผ ํ ํ๋ฆฟ์ ๋ํ ๋ณ์นญ์ ๋ง๋ค ์ ์์.
- using์ template alias๋ผ๊ณ ๋ ํจ.
1) using id = typeid;
2) template
using id = typeid;
using์ด ํ
ํ๋ฆฟ์ ๋ํ ๋ณ์นญ์ ๋ง๋ ๋ค๊ณ ํ ๋๋
๋ฐ๋์ template๊ณผ ๊ณต์กดํด์ผ ํจ.
using์ผ๋ก template์ผ๋ก ๋์ด ์๋ pair๋ฅผ ๋ฐ์๋ณด์.
ํ์
ํ๋๋ก ๊ณ ์ ์ํค๊ธฐ
๊ฐ) int ๋ฅผ typedef ๋ฅผ ์ด์ฉํด INT๋ก ๋ณ๊ฒฝํ๋ผ.
๋) double์ using์ผ๋ก DOUBLE๋ก ๋ณ๊ฒฝํ๋ผ.
๋ค) ํ ํ๋ฆฟ์ผ๋ก Point ํด๋์ค๋ฅผ ๋ง๋ค๊ณ , ์ด๋ฅผ using์ ์ฌ์ฉํด POINT(๋๋ฌธ์)๋ก ๋ฐ์ํ,์ธ๋ถ์์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด, Point์ printํจ์๋ฅผ ํธ์ถํ๋ผ.
๋ผ) typedef ๋ก๋ ํด๋ณด์!!