2019. 6. 5. 00:05ใPROGRAMMING/C & C++
ํด๋์ค (class)
C++๋ถํฐ ๋ฑ์ฅํ ์ฌ์ฉ์ ์ ์ ์๋ฃํ.
๊ฐ์ฒด๋ฅผ ์ถ์ํํ ์๋ฃํ์ด๋ค. (๊ฐ์ฒด๋ฅผ ํํํ๋ ์๋ฃํ)
(์ถ์ํ : ๊ณตํต๋ ์์๋ค์ ์ถ์ถํ๋ ํ์.)
1. ํด๋์ค์ ์ ๊ทผ์ ์ด ์ง์์ (์ ๊ทผ์ ์ด ๋ ์ด๋ธ)

public - ๋ฉค๋ฒ์ ๋ํ ์ ๊ทผ์ ์ด๋์๋ ์ ๊ทผ ํ์ฉ.
private - ๋ฉค๋ฒ์ ๋ํ ์ ๊ทผ์ ํด๋์ค ๋ด๋ถ์์๋ง ํ์ฉ.
protected - ๋ฉค๋ฒ์ ๋ํ ์ ๊ทผ์ ์์ ๊ด๊ณ & ํด๋์ค ๋ด๋ถ์์๋ง ํ์ฉ.


์ฆ, ์ธ๋ถ์์๋ public ๋ฉค๋ฒ์ ๋ํด์๋ง ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.
(๋ฉค๋ฒ ๋ณ์๋ ๋ง์ฐฌ๊ฐ์ง)
2. ํด๋์ค์ 4๋ ์์ฑ
์๋ํ, ์บก์ํ, ์์์ฑ, ๋คํ์ฑ
1. ์๋ํ
๋ฉค๋ฒ์ ์ ๊ทผ ๊ถํ์ ๊ธฐ๋ณธ private์ผ๋ก ๋๋ฉด์, ์ธ๋ถ๋ก๋ถํฐ์ ์ ๊ทผ์ ์ฐจ๋จํ๋ค.
์ธ๋ถ๋ก๋ถํฐ ์์น์๋ ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ ์ฐจ๋จํ๋ค. (๋ฐ์ดํฐ ๋ณดํธ)

2. ์บก์ํ
๊ด๋ จ์๋ ๋ฐ์ดํฐ์ ๊ธฐ๋ฅ์ ํ๋ฒ์ ๋ฌถ์ด์ ์ ๊ณตํ๋ค.
๊ตฌ์ฑ์์๋ฅผ ์ธ๋ถ๋ก๋ถํฐ ์จ๊ธด๋ค. -> ์๋ ์์ฑ.
์ฌ์ฉ์๋ ๋ด๋ถ ๋ถ๋ถ์ ๋ชจ๋ฅด๋๋ผ๋ ์ฝ์๋ ๋ถ๋ถ์ ํตํ์ฌ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋ค.

3. ์์์ฑ
์์์ ํด๋์ค๊ฐ ๊ฐ์ง ๊ณตํต๋ ์์๋ฅผ ๋ค๋ฅธ ํด๋์ค์๊ฒ ๋ฌผ๋ ค์ค ์ ์๋ค.
(์ฌ์ฌ์ฉ์ฑ ์ฆ๋, ์์ฐ์ฑ ์ฆ๋)
๊ธฐ๋ฅ์ ํ์ฅ๊ณผ ์ธ๋ถํ๊ฐ ๊ฐ๋ฅํ๋ค.
4. ๋คํ์ฑ
๊ฐ๊ธฐ ๋ค๋ฅธ ๊ฐ์ฒด๊ฐ "๋์ผํ ๋ฉ์์ง"๋ฅผ ํตํด ๊ฐ๊ธฐ ๋ค๋ฅธ ๊ธฐ๋ฅ์ ์ํํ๋ค.
์ฝ๋์ ์ ์ฐ์ฑ์ ์ฆ๋.
(์์๊ณผ ๋คํ์ฑ์ ์ถํ์ ๋ฐ๋ก ํฌ์คํ ์์ )
'PROGRAMMING > C & C++' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
18. [C++] ํด๋์ค ๋ณต์ฌ์์ฑ์ (0) | 2019.06.07 |
---|---|
17. [C++] ํด๋์ค ์์ฑ์์ ์๋ฉธ์ (0) | 2019.06.06 |
15. [C / C++] ํ์ผ๋ถํ ํ๊ธฐ (ํํฐ๋ถํ ) (0) | 2019.06.04 |
14. [C / C++] ํ์ผ ์ ์ถ๋ ฅ (0) | 2019.06.03 |
13. [C / C++] const์ ํฌ์ธํฐ (0) | 2019.05.26 |