ํ๊ฐ๋ฆฌ๋ ์ธ๋ถ์ด๋ค์ด ์ข ์๋๊ฑฐ ๊ฐ์์ ํด๊ทผํ๋ ๊ธธ์ ์ข ์ ์ด ๋ด.
๋ณดํต struct๋ ์คํ์ ์กํ๊ณ class๋ ํ์ ์กํ๋ค๋ผ๊ณ ๋จ์ ์ผ๋ก ์๊ณ ์๋๋ฏํ๋ฐ
ํ๋ฆฐ๊ฑด ์๋๋ฐ ์ข ๋ง์ด ์๋ต๋ ์๊ธฐ์.
struct๋ ์คํ์ผ๋ก ์กํ๋งํ ํ์ด๋ฐ์๋ง ์คํ์ ์กํ๋ค. ๊ฐ ๋ง๋ ๋ฌธ์ฅ์ผ๋ฏ.
์คํ์ผ๋ก ์กํ๋ ์ํฉ์ด๋ผ๊ณ ํ๋ฉด ์ฌํํ๊ฒ, ํจ์ ํธ์ถ ๋ฑ์ผ๋ก ์ปจํ
์คํธ๊ฐ ๋ฐ๋๋ ์๊ฐ์ด๊ฒ ์ง?
๊ทธ ์๊ฐ์ ์ง์ญ ๋ณ์๋ก ์ ์ธ ๋ struct๋ง ์คํ์ผ๋ก ์กํ.
๋ค๋ฅด๊ฒ ๋งํ๋ฉด class์ ๋ฉค๋ฒ๋ก ์ ์ธํ struct๋ ์คํ์ด ์๋๋ผ ํ์ ์กํ๋ค๋ ์๋ฆฌ์.
๊ทผ๋ณธ์ ์ผ๋ก ์ค๋ช
ํ๋ฉด struct๋ value ํ์
, class๋ reference ํ์
์ด๋ผ๋ ์ฐจ์ด๊ฐ ์๋๋ฐ
์ฝ๊ฒ ๋งํด์
value ํ์
์ "์ ์ธํ ์์น"์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ฐ๋ก ์กํ๊ณ
reference ํ์
์ ํ ๋ฉ๋ชจ๋ฆฌ ์ ์ด๋๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์กํ๊ณ ๊ทธ ์์น์ ๋ํ ์ ๋ณด๊ฐ ์ ์ธํ ์์น์ ์กํ๋ค๊ณ ๋งํ ์ ์์.
class๊ฐ struct๋ฅผ ๋ฉค๋ฒ๋ก ๊ฐ์ง๊ณ ์๋ค๊ณ ํ๋ฉด
๊ทธ class์ instance๋ ๋น์ฐํ ํ์ ์กํ๊ฒ ์ง?
๊ฒฐ๊ตญ struct์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํ์ ์กํ๋ค๋ ์๋ฆฌ์ ใ
ใ
static์ ๊ฒฝ์ฐ๋ ๊ฐ์ ๋งฅ๋ฝ์ผ๋ก ์ดํดํ๋ฉด ๋จ
์์ผ๋ก๋ ๋ฉด์ ์์ struct๋ value, class๋ reference ๋ผ๊ณ ๋งํ์
๋ญ ๋น์ฐํ ์๋ฆฌ๋ฅผ ๋จ๋ค์ด ๋ชจ๋ฅด๋ ๊ฒ์ฒ๋ผ ๋งํ๊ณ ์๋ ธ
์ ์ด์ ์ด๊ฑธ ๋ชจ๋ฅด๊ณ ์์ผ๋ฉด ํ์๋ ๋ญ๊ฐ ์ ์ฅ๋๋๊ฑธ๋ก ์๊ฐํ๊ฒ ์
๋ชฐ๋๋ ์ฌ๋์ด ์์์๋์์ง ใ ใด ๋นํฑ์งํด๋๋ค
์ฟจ์ฐ
๋ณ์
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
์ง์ง ํ๋ํ๊ฒ ๊ฐ์ ๋ก ์ค์ ๋ฐ์ง ์๋ ํ ํ์
์ํํ ์ฐ๋ค๊ฐ ์์ต๋ณด๋๊น ์กฐ๊ธ์ฉ ๋ค๋ฅด๋ค
์๋ฌด๋๋ ์ด์ง ๋ค๋ฆ ใ ใ C#์ผ๋ก ์ ํฅํ์ง 6๋ ์ด ๋์๋๋ฐ ์์ง๋ ๊ฐ๋ ๋ต๋ตํ ๋ ์์
์ด๋ณด๋ค์๊ฒ ํฐ ๋์์ด ๋จ
๊ธฐ์ด์ง์ ์๋ ์ด๋ณด์๊ฒ ์์คํ ์ ๋ณด๊ฐ ๋์์ ใณใณ
์ฑ ์์ ๋ดค๋๊ฒ struct๋ ํฌ๊ธฐ๊ฐ ์์ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ๋ ์ฌ์ฉํ๋๊ฒ ์ข๊ณ ์ผ๋ฐ์ ์ผ๋ก๋ class๋ฅผ ์ฌ์ฉํ๋๊ฒ ์๋ ์ธก๋ฉด์์ ์ข๋คํ๋๋ฐ ์๊ทธ๋ฐ์ง ์ด ๊ธ์๋ณด๊ณ ์ดํดํ๋ค ๊ณ ๋ง๋ค - dc App