ํด๋์ค ๋ฉค๋ฒ๋ค๋ static ๊ฐ๋
์ ์ ๋ชฉํ ์ ์์ต๋๋ค. ํ๋ก๊ทธ๋จ ๋ด์์ ํ ํด๋์ค์ ๋ํด์ ํ์ฌ ์กด์ฌํ๋ ์ด ๊ฐ์ฒด์ ์๋ฅผ ์ป๊ณ ์ถ์๋์ ๊ฐ์ ์ํฉ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. int Player::get_num_players() { return num_players;// num_players๋ Player ํด๋์ค ๋ด์ static ์ ์ } ํค๋ ํ์ผ์์ ํด๋์ค๋ฅผ ์ ์ธํ๊ณ , ํน์ attribute๋ฅผ static ํค์๋๋ฅผ ๋ถ์ฌ์ ์ ์ธํฉ๋๋ค. ํ์ง๋ง ์ฃผ์ํด์ผ ํ ์ ์ ํด๋น ์์ฑ์ ๋ํ ์ด๊ธฐํ๋ .cpp ํ์ผ์์ ํํฉ๋๋ค. ํด๋์ค์ ์ ์ ๋ด์์ ๋ฐ๋ก ์ด๊ธฐํ๋ฅผ ํ๋ฉด ์๋ฉ๋๋ค. // Static class members // main.cpp #include #include "Player.h" using namespa..
Class
C++์์๋ ํด๋์ค์๋ ์์ (const) ๊ฐ๋
์ ์ ์ฉํ ์ ์์ต๋๋ค. const๊ฐ ์ ์ฉ๋ ํด๋์ค๋ ์์ฑ(attribute)๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์์ฑ์ ๋ฉค๋ฒ ํจ์๋ฅผ ํธ์ถํ๋ฉด ์ด๋ป๊ฒ ๋ ๊น์? const Player villain {"Villain", 100, 55}; villain.set_name("Thanos");// COMPILER ERROR std::cout
์์๋ค์ํผ ํด๋์ค์๋ ์์ฑ 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); ๊ทธ๋ ๋ค๋ฉด ๋์ ์ผ๋ก ๋ง๋ค์ด์ง ๊ฐ์ฒด์ ๋ํด์๋ ์ด๋ป๊ฒ ํ ๊น์? ๋๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต..
ยทpython
*args (arguments) Python ์ฝ๋๋ฅผ ์์ฑํ ๋, ํจ์์ ์ธ์(arguments)๊ฐ ๋ช๊ฐ ์
๋ ฅ๋ ์ง ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ๊ฐ ์๊ธด๋ค. ์๋ฅผ ๋ค์ด, ๊ฐ์กฑ ๊ตฌ์ฑ์์ ์
๋ ฅํ๋ฉด ๊ทธ๋๋ก ์ถ๋ ฅํ๋ ํจ์๊ฐ ์๋ค๋ฉด, ๊ฐ์ธ๋ณ๋ก ๊ฐ์กฑ์ ๊ตฌ์ฑ์ ์๋ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ์ธ์๊ฐ ์ด ๋ช๊ฐ ์
๋ ฅ๋ ์ง๋ ์ ์ ์๋ค. ์ธ๊ณ์ ๋ชจ๋ ๊ฐ์กฑ์ด 4๋ช
์ผ๋ก๋ง ์ด๋ฃจ์ด์ ธ ์๋ค๋ฉด, ์ฐ๋ฆฌ๊ฐ ์๋ ๊ฒ ์ฒ๋ผ ๋ค์๊ณผ ๊ฐ์ด ํจ์๋ฅผ ์งค ์ ์๋ค. def family(dad, mom, sibling, me): print(dad, mom, sibling, me) family("๊น๋ฒ์", "์ด์๋ผ", "๋ฐํจ์ ", "์ฅ๋ฒ์ค") # output: ๊น๋ฒ์ ์ด์๋ผ ๋ฐํจ์ ์ฅ๋ฒ์ค ํ์ง๋ง ๋น์ฐํ ์ธ์์ ๋ชจ๋ ๊ฐ์กฑ ๊ตฌ์ฑ์์ ์๊ฐ ๋ค๋ฅด๊ณ , ์ด๋ด ๊ฒฝ์ฐ *args๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค. ..