๋ธ๋ฆฌ๊ฒ์ดํธ๋ ํจ์๋ฅผ ๋ชจ์๋ ๋ฆฌ์คํธ๊ณ ์ธ์๊ฐ๋ ๋์์ ๋ฃ์ด์ค์ ์๋ค๋๊ฑฐ ๊น์ง ์ดํด๊ฐ๋๋ฐ
์ด๋ฒคํธ๋ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ ๋ญ๊ฐ ๋ค๋ฅธ์ง ๋ชจ๋ฅด๊ฒ ๋ค
๋ธ๋ฆฌ๊ฒ์ดํธ๋ ํจ์๋ฅผ ๋ชจ์๋ ๋ฆฌ์คํธ๊ณ ์ธ์๊ฐ๋ ๋์์ ๋ฃ์ด์ค์ ์๋ค๋๊ฑฐ ๊น์ง ์ดํด๊ฐ๋๋ฐ
์ด๋ฒคํธ๋ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ ๋ญ๊ฐ ๋ค๋ฅธ์ง ๋ชจ๋ฅด๊ฒ ๋ค
๊ธ์๊ฐ๋ค๋ฆ
์ด๋ฒคํธ๋ ๋๋จธ์ง ๊ธฐ๋ฅ์ ๋๊ฐ์๋ฐ, ํธ์ถ์ ํด๋น ์ด๋ฒคํธ๊ฐ ์ ์ธ๋ ๊ณณ์์๋ง ํ ์ ์์. ํด๋น ๊ฐ์ฒด ๋ด๋ถ์์๋ง ์ด๋ฒคํธ๋ฅผ ํธ์ถํ ์ ์๊ฒ ํด์ ๊ด๋ฆฌ๋ฅผ ์ฝ๊ฒ ํ๊ธฐ ์ํ ๊ฑฐ๋ผ๊ณ ์๊ณ ์์
๋ธ๋ฆฌ๊ฒ์ดํธ๋ ํจ์ ํฌ์ธํฐ ๊ฐ์ ๊ฒ์ด๊ณ , ์ด๊ฒ์ ํจ์๋ฅผ ๋ณ์ํํ๋ ๊ฒ์ด๋ผ๊ณ ๋ณด๋ฉด๋. ํจ์ ์์ฒด๋ฅผ ๋ฆฌ์คํธ๋ก ๋ง๋ค์ ์์ผ๋๊น. ํจ์๋ฅผ ๋ด์ ์ ์๋ ๋ณ์ ํ์ ๋ฅผ ๋ง๋ค๊ณ , ๊ทธ ํ์ ์ ํจ์๋ฅผ ๋ด๋๊ฑฐ์ผ. ๊ทธ๋ผ ๊ทธ ํจ์๋ฅผ ๋ด์ ๋ณ์๋ฅผ ํธ์ถํ๋ฉด ํจ์๊ฐ ํธ์ถ๋๊ฒ ์ง. ๊ทธ๋ฆฌ๊ณ ๋ณ์๋๊น ๋ฆฌ์คํธ๋ ๋ง๋ค์ ์๊ฒ ์ง? ๊ทธ๋ฆฌ๊ณ ๋ณ์๋๊น ๋ค๋ฅธ ํจ์๋ก ์ธ์๋ก ๋ง๋ค์ด ๋์ง ์๋ ์๊ฒ ์ง? ๊ทธ๋ ๊ฒ ๋์ก๋ค๋ฉด ์ด๋ ํ ํธ์ถ ๊ธฐ๋ฐ์ผ๋ก ์๋ก ์๋ตํ๊ณ ํธ์ถํ ์๋ ์๊ฒ ์ง? ๊ทธ๋ผ ๊ทธ ์๋ต๊ณผ ํธ์ถ์ ์ด๋ฒคํธ๋ผ๋ ์ด๋ฆ์ ๋ถ์ด๊ณ ์ฝ๊ฒ ์ฐ๋๊ฒ ์ด๋ฒคํธ์ผ.
๊ธ์์๊ฐ 3๊ธ์ 5๊ธ์๋ก 2๊ธ์๋ ๋ค๋ฆ
C#์์ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ฅผ ์งํฉ์ผ๋ก ํ๊ฒ ์ด๋ฒคํธ์ผ. ํน์ ํธ๋ฆฌ๊ฑฐ๊ฐ ์ธ๋ณดํฌ ๋ ๋ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ 1:1, ์ด๋ฒคํธ๋ 1:N๊ฐ
์ด๋ฒคํธ์ += ๋ add๋ฅผ ํตํด์ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ฅผ ์ถ๊ฐํ๋ค๊ณ ์๊ฐํ๋ฉด ๋ผ
https://learn.microsoft.com/ko-kr/dotnet/csharp/language-reference/keywords/event
์๋ ์๋ฐํ๋งํ๋ฉด ์์ ๋ค๋ฅธ ๊ฐ๋ ์๋๊ฐ? ๋ธ๋ฆฌ๊ฒ์ดํธ๋ void Exe(A) ์์ A๋ผ๋ ์ธ์์ ๋ณ์ ๋์ ํจ์๋ฅผ ๋ฃ๊ธฐ์ํ๊ฑฐ๊ณ ์ด๋ฒคํธ ์ฒ๋ฆฌ๋ฅผ ํ๋ ค๋ฉด eventtarget.add(A)๋ก A๋ผ๋ ์ธ์๋ฅผ ์จ์ผํ๋ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ฅผ ์ธ ์ ๋ฐ์ ์๋๊ฑฐ๊ณ
์ธ๋ฆฌ์ผ์์ ๋ธ๋ฆฌ๊ฒ์ดํธ ์ด๋ฒคํธ๋ผ๋๊ฒ ์๊ธดํจ ๊ทผ๋ฐ ์ง๋ฌธ์์ฑ์๊ฐ ์ธ๋ฆฌ์ผ์ธ์ง์๋์ง๋ ๋ชฐ?๋ฃจ
ํจ์ํฌ์ธํฐ, ํจํด
๋ธ๋ฆฌ๊ฒ์ดํธ๋ ํจ์ํฌ์ธํฐ๊ณ ์ด๋ฒคํธ๋ ๋์์ธํจํด
https://geukggom.tistory.com/210
- dc App