protected void Foo<T>() where T : Enum
์ฒ๋ผ ์์ฑํ๋ฉด ๋์ง ์์๊น ์ถ์๋๋ฐ
ํจ์ ๋ด๋ถ์์ T๊ฐ Enum์ผ๋ก ์ธ์์ด ์๋๋ค...
(int)๋ก ์บ์คํ ๋ ๋ถ๊ฐ๋ฅํ๊ณ ํ์ฑ๋ ์๋ค์ด๊ฐ
๋ฐฉ๋ฒ์ด ์์๊น?
protected void Foo<T>() where T : Enum
์ฒ๋ผ ์์ฑํ๋ฉด ๋์ง ์์๊น ์ถ์๋๋ฐ
ํจ์ ๋ด๋ถ์์ T๊ฐ Enum์ผ๋ก ์ธ์์ด ์๋๋ค...
(int)๋ก ์บ์คํ ๋ ๋ถ๊ฐ๋ฅํ๊ณ ํ์ฑ๋ ์๋ค์ด๊ฐ
๋ฐฉ๋ฒ์ด ์์๊น?
๋๊ฐ ์ ๋ฐ ๊ตฌ์กฐ์ ํ์์ฑ์ ๋๊ผ๋ค๋ฉด ๋ค๋ฅธ ๋๊ตฐ๊ฐ๋ ๋๋ ์ ์ด ์์ ๊ฒ์. ๊ตฌ๊ธ ๊ฒ์ ใฑใฑ ๊ฒ์์ด๋ 'c# enum inherit' ์ ๋๋ฉด ๋ ๊ฑฐ์ผ
์ผ๋จ ๊ธฐ๋ณธ์ ์ธ ๋ต๋ณ์ ํ์๋ฉด enum์ ์์์ด ์ ๋จ. ๊ผญ ์ฐ๊ณ ์ถ๋ค๋ฉด ์์ ๊ฒ์์ด๋ก ๋ค์ ธ๋ณด๋ฉด ๋ญ๊ฐ์ ํธ๋ฒ์ด๋ ์ ๊ฑธ ๋์ฒดํ ์ ์๋ ์ฝ๋๋ฅผ ์ฐ๊ตฌํ ๋ฏธ์น ์ฝ๋๊ฐ ์ด๋๊ฐ์๋ ์์ ๊ฑฐ์ผ. ์๋ง๋.