2020. 9. 17. 15:12ใ์ ๊ณต ๊ณผ๋ชฉ/์๋์ฐ ํ๋ก๊ทธ๋๋ฐ
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ -Delegate
Delegate๋ ์๋์ฐ ํ๋ก๊ทธ๋๋ฐ์ ๊ณต๋ถํ๋ฉด์ ์ฒ์๋ณด๋ ์ค์ํ ๊ฐ๋ ์ด๋ผ ์์ฃผ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํด๋ณธ๋ค.
Delegate
-๋ฉ์๋๋ฅผ ๋์ ํด์ ํธ์ถํด์ฃผ๋ ๋ณ์
Delegate์ ์ฐ์์ ๋ณด๋ฉด์ ๋ณด๋ฉด ์ดํด๊ฐ ๋๋ค.
Delegate ์ฌ์ฉ๋ฐฉ๋ฒ์ ์ด๋ ๋ค.
1) ๋ธ๋ฆฌ๊ฒ์ดํธ ์ ์ธ(์ฌ์ฉํ ๋ฉ์๋์ ๊ฐ์ ํ์ ์ผ๋ก) //delegate void Delegate();
2) ๋ฉ์๋ ์ ์ธ //public static void Method1()
3) ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด์์ฑ //Delegate d = new Delegate(Method1)
4) ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด์ฐ๊ฒฐ // d += new Delegate(Method2)
5) ๋ธ๋ฆฌ๊ฒ์ดํธ ํธ์ถ // d()
๋ธ๋ฆฌ๊ฒ์ดํธ๋ ์ฌ๋ฌ๊ฐ์ ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด๋ฅผ ๋ฌถ์ด๋ฃ์ด ์ฌ์ฉํ๋ ๊ฒ ๊ฐ๋ค.
์๋ฅผ ์คํํ๋ค๋ฉด Method1์ด ๋จผ์ ์คํ๋๊ณ Method2๊ฐ ์คํ๋๋๋ฐ 1์ด ๋จผ์ d๋ผ๋ ๋ณ์์ ์ ์ฅ์ด๋๊ณ ๊ทธ ๋ค์ 2๊ฐ +=๋๊ธฐ ๋๋ฌธ์ ๋ถ๋๋ค. ์ฌ๋ฌ๊ฐ์ง ๋ฉ์๋๋ฅผ ๊ฐ์ง๊ณ ์๋ค๋ ์ ์ด ๋์ค์ ์ ์ฉํ๊ฒ ์ฐ์ผ ๊ฑฐ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ ๋ค.
'์ ๊ณต ๊ณผ๋ชฉ > ์๋์ฐ ํ๋ก๊ทธ๋๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
C# - ์ธ์ด ๊ตฌ์กฐ (0) | 2020.09.24 |
---|---|
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ํผ(ํ๋กํผํฐ) (0) | 2020.09.17 |
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ํผ์ ๋ํ์ฌ (0) | 2020.09.10 |
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C# ๊ธฐ๋ณธ๊ฐ๋ (2) (0) | 2020.09.10 |
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C#ํ๋ก๊ทธ๋๋ฐ ์ ๋ฌธ (0) | 2020.09.10 |