[C#] Dictionary
Dictionary์ ์ข ๋ฅ Dictionary Key์ Value์ Pair๋ฅผ ๊ฐ๋ ์๋ฃ๊ตฌ์กฐ Generic ํด์ํ ์ด๋ธ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉ
Dictionary์ ์ข ๋ฅ Dictionary Key์ Value์ Pair๋ฅผ ๊ฐ๋ ์๋ฃ๊ตฌ์กฐ Generic ํด์ํ ์ด๋ธ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉ
๋ฆฌํ๋ ์ ์ ๊ฐ๋ ์ผ๋ฐ์ ์ผ๋ก๋ ํด๋์ค๋ฅผ ํตํด ๊ฐ์ฒด๋ฅผ ์์ฑ ์ฌ์ฉ์(ํ๋ก๊ทธ๋๋จธ)๋ ํด๋์ค์ ํ๋์ ๋ฉ์๋๋ฅผ ์๊ณ ์๊ณ , ์ฌ์ฉํ๋ ๋ฐ ๋ถํธํจ์ด ์๋ค
as์ is ํ๋ณํ์ ์ํ ์์ฝ์ด ๊ฐ๋ฐ์์ ์ํด์ ์๋์ ์ผ๋ก downcastingํ๋๋ก ๋์์ฃผ๋ ์ฐ์ฐ์ downcasting ๋ฒ ์ด์ค ํด๋์ค๊ฐ ํ์ ํด๋์ค๋ก ์บ์คํ ๋๋ ๊ฒ upcasting ํ์ ํด๋์ค๊ฐ ๋ฒ ์ด์ค ํด๋์ค๋ก ์บ์คํ ๋๋ ๊ฒ
9 Slicing ํ๋์ ํ ์ค์ณ๋ก ๋ค์ํ ์ฌ์ด์ฆ์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ด๋ฏธ์ง๋ก ์ค์ ํ๋ ๋ฐฉ๋ฒ ๋ฆฌ์ฌ์ด์ง ์, ์ด๋ฏธ์ง๋ฅผ ์๊ณกํ์ง ์์
๋ฏธํค๋ง์ฐ์ค, ๊ณฐ๋์ด ํธ, ์๋ผ๋ ๋ฑ ๋์ฆ๋ ์บ๋ฆญํฐ์ ํจ๊ป ํ๋ 3๋งค์น ํผ์ฆ ๊ฒ์
where ํค์๋ ์ฌ์ฉ ์์
๋ฉ์๋์ ์ ์ธ๋ new modifier base class์ ๋ฉ์๋๋ฅผ ์จ๊น upcasting ํ์ฌ base class์ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ ์ด๋ ์๋๋ ๋์์ธ์ ๋ฐํ๋ ํ์์ด๋ฏ๋ก ์ํ
delegate(๋๋ฆฌ์) ํค์๋ delegate๋ ๋ฉ์๋๋ฅผ ๋ค๋ฅธ ๋ฉ์๋์ ์ธ์๋ก ์ ๋ฌํ๋ ๋ฐ ์ฌ์ฉ ํ์์ด ์ผ์นํ๋ ๊ตฌ์กฐ์ ๋ชจ๋ ๋ฉ์๋๋ ๋๋ฆฌ์์ ํ ๋นํ ์ ์๋ค ๋ฉ์๋๋ ์ ์ /์ธ์คํด์ค์ผ ์ ์๋ค. delegate ์์ฑ ํจ์ ํฌ์ธํฐ์ ์ ์ฌํ์ง๋ง, ๊ฐ์ฒด ์งํฅ์ ์ผ๋ก ์ธ์คํด์ค ๋ฐ ๋ฉ์๋๋ฅผ ์บก์ํํ๋ค. ๋ฉ์๋๋ฅผ ๋งค๊ฐ ๋ณ์๋ก ์ ๋ฌํ ์ ...
friend class ํ class์์ ๋ค๋ฅธ class์ field๋ฅผ public์ผ๋ก ์ฐธ์กฐํ๋๋ก ํ์ฉ
์๋ธ๋ฃจํด(Subroutine) C์ธ์ด ๋ฑ์์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ํจ์ ์์ํ ๋ ์ง์ ํ๋ ์ง์ ์ด ํ๋ ์กด์ฌํ๊ณ , ์ข ๋ฃ๋๋ ์ง์ ์ ์ค์ ํ ์ ์๋ค. ์๋ธ๋ฃจํด์ ์์์ ๊ณผ ์ข ๋ฃ์ ์ด 1๊ฐ์ธ ์ฝ๋ฃจํด์ ํฌํจ