ํฌ์ธํฐ3 [C++] 14. ์ฐธ์กฐ์(Reference) โ ์ฐธ์กฐ์(Reference) ์ฐธ์กฐ์๋ ํฌ์ธํฐ์ ์๋นํ ์ ์ฌํ ๊ฐ๋ ์ด๋ค. C์์๋ ํฌ์ธํฐ๋ง ์์์ง๋ง C++์์๋ ์ฐธ์กฐ์(Reference)๋ผ๋ ๊ฐ๋ ์ด ๋์ ๋๋ฉด์ ์ข ๋ ํธํ๊ฒ ์ฃผ์๊ฐ์ ์ ๊ทผํ ์ ์๊ฒ ๋์๋ค. ์ฌ์ค C++์์๋ ํฌ์ธํฐ์ ์์กดํ๊ณ ์ถ์ง ์์๊ณ *๊ณผ ->๋ฅผ ์ค์ด๊ณ ์ถ์๋ค๊ณ ํ๋ค. ์ฐ๋ฆฌ๊ฐ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋นํ๊ณ ๋ณ์๋ผ๋ ๊ฒ์ผ๋ก ์ด๋ฆ์ ์ง์ด์ค๋ค. ์ฐธ์กฐ์๋ ์ด ์ด๋ฆ์ ๋ณ๋ช ์ ๋ถ์ฌ์ฃผ๋ ๊ฒ์ด๋ค. ์๋ฅผ ๋ค์ด '๊ทผํธ'์ ๋ณ๋ช ์ด '๊ทผ๋๋ฆฌ'๋ผ๊ณ ํ์ ๋ '๊ทผํธ'์๊ฒ ๊ณผ์๋ฅผ ์ฃผ๋ ๊ฒ๊ณผ '๊ทผ๋๋ฆฌ'์๊ฒ ๊ณผ์๋ฅผ ์ฃผ๋ ๊ฒ์ ๋์ผํ๋ค. ๊ฒฐ๊ตญ, ์ฐธ์กฐ์๋ ๋ ๋ค๋ฅธ ์ด๋ฆ์ ๋ถ์ฌํ๋ ๊ฒ๊ณผ ๊ฐ๋ค๊ณ ๋ณด๋ฉด ๋๋ค. #include using namespace std; int main() { int var = 10; int &ref .. 2023. 6. 2. [C/C++] 10. ํฌ์ธํฐ(feat. ์ค๋งํธ ํฌ์ธํฐ) โ ํฌ์ธํฐ C++์ ์ฅ์ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ง์ ์ ์ผ๋ก ์ ์ดํ ์ ์๋ค๋ ๊ฒ์ด๋ค. ๋ง์ ๊ฐ๋ฐ์์๊ฒ๋ ๋จ์ ์ผ๋ก ๋๊ปด์ง ์ ์๋ค. ๋์ผ๋ก ํคํ ํ์ธํด ๋ณผ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ชป ๊ด๋ฆฌํ๋ฉด ํ๋ก๊ทธ๋จ์ด ์ฃฝ์ด๋ฒ๋ฆฌ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ง์ ์ ์ดํ๋ ๊ฒ์ด ์ข์ ์๋ ์๊ณ ์๋ ์๋ ์์ง๋ง, ํ์คํ ๊ฑด C/C++์ ์ปดํจํฐ์ ๋ฉ์ธ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ด๋ป๊ฒ ๋์๊ฐ๋์ง ์๊ธฐ์๋ ์ ํฉํ๋ค๋ ๊ฒ์ด๋ค. ํฌ์ธํฐ๋ ์ฃผ์๋ฅผ ๋ด๊ณ ์๋ ๋ณ์์ด๋ค. 64๋นํธ ์ฒด์ ์์ integer ํ์ ์ ํฌ์ธํฐ ๋ณ์๋ ๋ช์ธ๊ฐ๋ฅผ ๋ฌป๋ ์ง๋ฌธ์ ๋ง์ ๋ถ๋ค์ด 4byte๋ผ๊ณ ๋๋ตํ๋ค. ํฌ์ธํฐ๋ณ์๋ ์ฃผ์๋ฅผ ๋ด๊ณ ์๋ ํฌ์ธํฐ๋ณ์๋ ์ปดํจํฐ์ ์๋(word)์ ๊ฐ๋ค. 8๋นํธ ์ฒด์ ์์๋ 1 ์๋๊ฐ 8๋นํธ=1๋ฐ์ดํธ์ด๋ค. ๋ฐ๋ผ์ 64๋นํธ ์ฒด์ ์์๋ ํ์ ์ด ๋ฌด์์ด๊ฑด ๊ฐ์ ํฌ์ธํฐ ๋ณ์์ ํฌ๊ธฐ๋ 64.. 2023. 4. 26. [C++]ํฌ์ธํฐ์ ๋ ํผ๋ฐ์ค ์ฐจ์ด C++์์ ํฌ์ธํฐ์ ๋ ํผ๋ฐ์ค๋ ๋ชจ๋ ๋ณ์๋ฅผ ๊ฐ๋ฆฌํค๊ฑฐ๋ ์ฐธ์กฐํ๋๋ฐ ์ฌ์ฉ๋์ง๋ง, ๊ทธ๋ค ๊ฐ์ ์ค์ํ ์ฐจ์ด์ ์ด ์์ต๋๋ค. ์ ์ - ํฌ์ธํฐ(Pointer): ํฌ์ธํฐ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์ ์ฅํ๋ ๋ณ์์ ๋๋ค. ๋ณ์์ ์ฃผ์๋ฅผ ์ ์ฅํ๊ณ ํด๋น ๋ณ์์ ๋ํ ๊ฐ์ ์ฐธ์กฐ๋ฅผ ํตํด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์กฐ์ํ ์ ์์ต๋๋ค. ํฌ์ธํฐ๋ '*' ๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ธํ๋ฉฐ, ํ ๋น๋ ์ฃผ์๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. - ๋ ํผ๋ฐ์ค(Reference): ๋ ํผ๋ฐ์ค๋ ๊ธฐ์กด ๋ณ์์ ๋ณ์นญ(alias)์ ๋๋ค. ์ฆ, ๊ธฐ์กด ๋ณ์์ ๋ํ ๋ณ์นญ์ ๋ง๋ค์ด ํด๋น ๋ณ์๋ฅผ ์ฐธ์กฐํ ์ ์๋๋ก ํฉ๋๋ค. ๋ ํผ๋ฐ์ค๋ '&' ๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ธ๋๋ฉฐ, ํ ๋ฒ ํ ๋น๋๋ฉด ๋ค๋ฅธ ๋ณ์๋ก ๋ณ๊ฒฝ๋ ์ ์์ต๋๋ค. ์ด๊ธฐํ - ํฌ์ธํฐ(Pointer): ํฌ์ธํฐ๋ ์ด๊ธฐํํ์ง ์๊ฑฐ๋ ๋ ํฌ์ธํฐ๋ก ์ด๊ธฐํํ ์ ์์ต๋๋ค... 2023. 1. 9. ์ด์ 1 ๋ค์