C++์์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ๋, ๋์
์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ฆฌ์คํธ์ ํ์์ผ๋ก ์ด๊ธฐํ ํ๋ ๋ฐฉ๋ฒ์ด ์กด์ฌํฉ๋๋ค. ์ด๋ฅผ ์ฐ๋ฆฌ๋ ์์ฑ์ ์ด๊ธฐํ ๋ฆฌ์คํธ ๋ผ๊ณ ๋ถ๋ฆ
๋๋ค ์์๋ฅผ ๋ณด์ฌ๋๋ฆฌ๊ฒ ์ต๋๋ค. class Player { private: string name{}; int health{}; int xp{}; public: // Constructor Player(string name_val, int health_val, int xp_val); }; Player::Player(string name_val, int health_val, int xp_val) : name{name_val}, health{health_val}, xp{xp_val} {} ํ์ง๋ง ์
๋ ฅํ๋ ์ฌ๋์ด ๋ชจ๋ ๊ฐ์ ์
๋ ฅํ์ง ์์ ์ ์๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ์ค๋ฒ..
C++/๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ (OOP)
OOP๋ฅผ ์ฌ์ฉํ๋ค๋ณด๋ฉด, ํ ํ๋ก์ ํธ ๋ด์์ ๋ค์์ ํค๋ ํ์ผ๊ณผ cppํ์ผ์ ๋ง๋ค๊ฒ ๋ฉ๋๋ค. ์ด ๋ ์ฐ๋ฆฌ๋ cpp ํ์ผ ๋ด๋ถ์์, include "header_name.h" ์ ํํ๋ก ์ฐ๋ฆฌ๋ ํค๋ ํ์ผ์ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ํ์ง๋ง cpp ํ์ผ์ด ๋ค์๊ฐ ๋๋ฉด์, ํ๊ฐ์ง ํค๋๋ฅผ ๋ค์์ cpp ํ์ผ์์ ์ค๋ณต ํฌํจํ๊ฒ ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ฐ๋ฆฌ๋ ์ค๋ณต ์ ์ ๋ฌธ์ ๋ผ๊ณ ๋ ๋ถ๋ฆ
๋๋ค. ์ด๋ฐ ํํ๋ ์ปดํ์ผ ์ค๋ฅ๋ฅผ ์ ๋ฐํฉ๋๋ค. (ํ๋ C++ ์ปดํ์ผ๋ฌ๋ค์ ์ด๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํ ๋ด๋ถ ๋ฉ์ปค๋์ฆ์ด ์กด์ฌํฉ๋๋ค๋ง, ๋น์ฐํ ์ ์ด์ ์ด๋ฌํ ์ค๋ฅ๋ค์ ๋ฐฉ์งํ๋ ๊ฒ์ด ์ฐ์ ์
๋๋ค.) ๊ทธ๋ ๊ฒ ํ๊ธฐ ์ํด์, ๋๊ฐ์ง ์ ์ฒ๋ฆฌ๋ฌธ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์กด์ฌํฉ๋๋ค. 1. #ifndef, #define, #endif #ifndef, #define,..
์์๋ค์ํผ ํด๋์ค์๋ ์์ฑ attributes ์ ๋ฉ์๋ methods ๊ฐ ์กด์ฌํฉ๋๋ค. ์ด๊ฒ๋ค์ ํด๋์ค ๋ฉค๋ฒ ๋ผ๊ณ ๋ถ๋ฅด๋๋ฐ์, ํด๋์ค ๋ฉค๋ฒ๋ค์ ์ ๊ทผํ๊ธฐ ์ํด์๋ ์ด๋ป๊ฒ ํด์ผ ํ ๊น์? ๋ฐ๋ก ๊ฐ ๊ฐ์ฒด๋ค์ ์ด๋ฆ ๋ค์ dot operator(.) ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ํ ๊ณ์ข ๊ด๋ฆฌ์ฉ Account ํด๋์ค๋ฅผ ํตํด ricky_account๋ผ๋ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ricky_account.balance, ricky_account.deposit(double)์ผ๋ก ๊ฐ๊ฐ ์์ฑ๊ณผ ๋ฉ์๋๋ฅผ ํธ์ถํ์์ต๋๋ค. Account ricky_account; ricky_account.balance; ricky_account.deposit(1000.00); ๊ทธ๋ ๋ค๋ฉด ๋์ ์ผ๋ก ๋ง๋ค์ด์ง ๊ฐ์ฒด์ ๋ํด์๋ ์ด๋ป๊ฒ ํ ๊น์? ๋๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต..
OOP์ ํต์ฌ์ธ ํด๋์ค์ ๊ฐ์ฒด๋ ๊ฐ๊ฐ ๋ฌด์์ผ๊น์? Class | ํด๋์ค ํด๋์ค๋ '๊ฐ์ฒด๋ค์ ์ฒญ์ฌ์ง' ์
๋๋ค. ๋ํ ํด๋์ค๋ '์ฌ์ฉ์๊ฐ ์ง์ ํ ์๋ฃํ' ์
๋๋ค. ๋ง์น ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ์ ์๋ ์ค์ ์๋ฃํ์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ ๋ฐ์ดํฐ์
๋๋ค. (ํด๋์ค์ ์ ์ธ ๋ฐฉ์์ ๋ณด๋ฉด ๋์ฑ ์ดํด๊ฐ ๋ ๊ฒ ์
๋๋ค.) ํด๋์ค์๋ attributes(์์ฑ) ๋ค์ด ์๋๋ฐ, ๊ทธ๊ฒ์ด ์ฐ๋ฆฌ๊ฐ ์๋ '๊ฐ (data)' ๊ณผ ๋์ผํ ์ญํ ์
๋๋ค. ๊ทธ๋ฆฌ๊ณ methods(๋ฉ์๋) ๋ค๋ ์๋๋ฐ, ์ด๊ฒ์ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ 'ํจ์ (function)' ์ ๋์ผํ ์ญํ ์
๋๋ค. ๋ํ ํด๋์ค๋ค์ ํด๋์ค์ ๋ด๋ถ์ ์ผ๋ก๋ง ์ฌ์ฉ๋๋ ์ฉ๋์ ํจ์(๋ฉ์๋)์ ๊ฐ(์์ฑ) ๋ค์ ๊ฐ์ง๊ณ ์์ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ค์ ์จ๊ธธ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ฐ๋
๋ค์ public / pri..