๋ง์ฝ covariant๊ฐ ๋ฌด์์ ๋ปํ๋์ง ๋ชจ๋ฅธ๋ค๋ฉด, ์ผ๋จ์ ๊ทธ ๋ฌธ์ฅ์ ๊ฑด๋๋ฐ๊ณ ์ ๋๋จธ์ง ๋ฌธ์ฅ๋ค๋ง ์ฝ๋๋ค๊ณ ๊ฐ์ ํ๊ณ
1. ํด์์กฐ์ฐจ ์๋๋ค
2. ๋ญ๋ง์ธ์ง๋ ์๊ฒ ๋๋ฐ ์ ์์ฝํ์ง๋ค
3. ๊ทธ๋ฅ ํ๋ฒํ๊ฒ ์ ์ฝ์ด์ง๋ค
1,2,3 ์ค์ ์ด๋ฐ?
๋ช๋ฒ ๋ฐ๋ณตํด์ ์ฝ์ด๋ด์ผ ์ดํด๋ ๊ฑฐ ๊ฐ์๋ฐ
1
2
2. ๊ทผ๋ฐ ์ด๋ฐ๊ฑฐ ๋๋ ๊ตฌ๊ธ ๋ฒ์ญ๊ธฐ๋๋ฆฌ๊ณ ๋ด
๊ทธ๋ฅ ์์ด์ฌ์ดํธ๊ฐ๋ฉด ๋ฌด์กฐ๊ฑด ํฌ๋กฌ์ผ๋ก ์๋๋ฒ์ญ์..
2๋ฒ ๊ทผ๋ฐ Co(ํจ๊ป)Variant(๋ค์ํ?) ๋ฆฌํด???? ๋ญ์ง ์ ๊ฒ, ๋ฆฌํด๊ฐฏ์๊ฐ ๋ญ ๋ค์ํ๋ค๋๊ฑด๊ฐ... ์๋ผ์ด
๋ชฐ๋ผ ๋ ํ๋ฆฐ๊ฑฐ๊ฐ์ด ใ ใ ใ ใ
๋ฒ์ญ๊ธฐ๊ฐ ๋ค ํด์ค์ ๊ด์ฐฎ์
์ฐ๋ฆฌ๋ง๋ก๋ ๋ชจ๋ฅด๊ฒ ๋ค...;;
๋ฑ๋ด๋ ๊ทธ๊ฑฐ๋ค
๊ทธ๋์ ํํ๊ณ ์์๋ค ๊ปด๋๊ณ ์ฌ๋์ค ๋ชจ๋ฅด๋ ๋จ์ด๋ง ๊ฒ์ํ๋ฉด ์์ด๊ณต๋ถ๋ ๋จ
2
https://learn.microsoft.com/ko-kr/dotnet/csharp/language-reference/proposals/csharp-9.0/covariant-returns
๋๋๊ฒ๋ ํ๊ตญ์ด๋ก ์จ๋๋ ๋ ๋ชจ๋ฅด๊ฒ ๋ค
๋ชฐ๋ผ์ ๋ชป์ฐ๋๊ฑด์ง ์ธ์ผ์ด์์ด์ ์์ฐ๋๊ฑด์ง๋ชฐ๋ผ๋ ๋ ์ฌํ ์์จ๋ด์ ๋ชจ๋ฅด๊ฒ ์.
ํด๋์ค A,B๊ฐ ์์
https://gall.dcinside.com/game_dev/117054
๋ฌธ์ฅ์ด ๊ธธ์ด์ ๋์ธ๋ฒ์ฉ ์ฝ์ด์ผ ์ดํด ๋๋ค ์ด๋ ต๋ค