์๋ฉธ์2 [C++] 16-3. ์์(Inheritance)๊ด๊ณ์ ์ธ์คํด์ค ์์ฑ, ์๋ฉธ ์์ ๊ด๊ณ์์ ์์ฑ๋๋ ์ธ์คํด์ค์ ์ ํ ์ค ๋คํ์ฑ์ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ง ์ธ์คํด์ค๋ ๋ณดํต ํ์ํด๋์ค(Derived Class)๋ฅผ ํตํด ๊ธฐ๋ณธ ํด๋์ค(Base Class)๋ฅผ ์ด๊ธฐํํฉ๋๋ค. ์์ ๊ด๊ณ์์ ํ์ ํด๋์ค์ ์ธ์คํด์ค๋ฅผ ๋ง๋ ๋ค ํ๋๋ผ๋ ๋ด๋ถ์ ์ผ๋ก๋ ๊ธฐ๋ณธ ํด๋์ค์ ์ธ์คํด์ค๊น์ง ๋ง๋ค์ด์ง์ง๋ง ๊ธฐ๋ณธ ํด๋์ค์ ์์ฑ์๋ ์์๋ก ํธ์ถํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ฐ๋๋ก ์ธ์คํด์ค์ ์๋ฉธ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ํ์ ํด๋์ค๋ง ์๋ฉธํ๊ณ ๊ธฐ๋ณธ ํด๋์ค์ ์์ญ์ด ์๋ฉธ๋์ง ์์ผ๋ฉด ๋ฉ๋ชจ๋ฆฌ ๋์(Memory Leak)๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ์๊ธฐ ๋๋ฌธ์ ์ด ๋ํ ํ์ ํด๋์ค์์ ์ฑ ์์ ธ์ผ ํฉ๋๋ค. ์์ฑ์(Contructor) ๊ธฐ๋ณธ ํด๋์ค(Base Class)์ ์์ฑ์ ํธ์ถ: ํ์ ํด๋์ค(Derived Class)์ ์์ฑ์๊ฐ ํธ์ถ๋๊ธฐ ์ ์ ๋จผ์ ๊ธฐ๋ณธ .. 2023. 6. 29. [C++] 15. ํด๋์ค(class)์ ๊ตฌ์กฐ์ฒด(struct) # ๊ตฌ์กฐ์ฒด(struct) ๊ตฌ์กฐ์ฒด(struct)๋ ๊ด๋ จ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฌถ์ด ํํํ๊ธฐ ์ํ ์ฌ์ฉ์ ์ ์ ๋ฐ์ดํฐ ํ์์ ๋๋ค. ๊ตฌ์กฐ์ฒด๋ ๋ฉค๋ฒ ๋ณ์์ ์งํฉ์ผ๋ก ์ด๋ฃจ์ด์ง๋ฉฐ, ๊ฐ ๋ฉค๋ฒ ๋ณ์๋ ๋ค๋ฅธ ๋ฐ์ดํฐ ํ์์ ๊ฐ์ง ์ ์์ต๋๋ค. ๊ตฌ์กฐ์ฒด๋ ํด๋์ค์ ์ ์ฌํ์ง๋ง ํด๋์ค์๋ ๋ช ๊ฐ์ง ์ค์ํ ์ฐจ์ด์ ์ด ์์ต๋๋ค. ๊ตฌ์กฐ์ฒด๋ ์ผ๋ฐ์ ์ผ๋ก ๊ด๋ จ๋ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋ฃนํํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ฉฐ, ํน์ ๋์์ ๊ตฌํํ๊ธฐ ์ํ ๋ฉค๋ฒ ํจ์๋ฅผ ๊ฐ์ง ์ ์์ต๋๋ค. ์ฌ์ค C++์์๋ ๋ฉค๋ฒ ํจ์๋ฅผ ์ผ๋ง๋ ์ง ๊ฐ์ง ์๋ ์์ง๋ง, ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ๊ตฌ์กฐ์ฒด์ ํน์ฑ์ ๋ง์ ๊ธฐ๋ฅ์ ํ๋ ํจ์๋ ์ ์ํ์ง ์์ต๋๋ค.(๊ทธ๋ด ๋ฐ์ ํด๋์ค๋ฅผ ์จ์ผ ํฉ๋๋ค) ๋ฉค๋ฒ ๋ณ์๋ ์ฃผ๋ก ๊ตฌ์กฐ์ฒด ๋ด์์ ์ง์ ์ ๊ทผ๋์ด ์ฌ์ฉ๋ฉ๋๋ค. ๋ํ, ๊ตฌ์กฐ์ฒด์ ๊ธฐ๋ณธ์ ์ธ ๊ฐ์์ฑ์ public์ผ๋ก ์ค์ ๋์ด ์์ต๋๋ค. ์ฆ.. 2023. 6. 9. ์ด์ 1 ๋ค์