๐Ÿ’ฌ Language/C++

์ฐธ์กฐํ˜• ๋ณ€์ˆ˜ (Reference variable) ์ฐธ์กฐํ˜• ๋ณ€์ˆ˜๋Š” reference์™€ value๊ฐ€ ๊ฐ™์€ ์ทจ๊ธ‰์ด๋‹ค. ์ฐธ์กฐํ˜•๋ณ€์ˆ˜๋Š” ์„ ์–ธ๊ณผ ๋™์‹œ์— ์ดˆ๊ธฐํ™”ํ•ด์•ผํ•œ๋‹ค. ์ดˆ๊ธฐํ™” ๋œ ํ›„์—๋Š” ๋‹ค๋ฅธ ๋ณ€์ˆ˜๋ฅผ ์ฐธ์กฐํ•˜๋„๋ก ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค. ์ฐธ์กฐํ˜• ๋ณ€์ˆ˜๋Š” l-value(์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’)๋ฅผ ๊ฐ€๋ฆฌ์ผœ์•ผํ•œ๋‹ค. ์ฐธ์กฐํ˜• ๋ณ€์ˆ˜๋Š” NULL๋กœ ์ดˆ๊ธฐํ™” ํ•  ์ˆ˜ ์—†๋‹ค. int &ref = value1; // (O) ref = value2; // (X) ์ฐธ์กฐํ˜• vs ํฌ์ธํ„ฐ ์œ„์—์„œ ref == value๋ผ๊ณ  ๋งํ–ˆ๋‹ค์‹œํ”ผ ์ฐธ์กฐํ˜•์€ ์ ‘๊ทผํ•  ๋•Œ ์•”์‹œ์ ์œผ๋กœ ์—ญ์ฐธ์กฐ๋˜๋Š” ํฌ์ธํ„ฐ์™€ ๊ฐ™์€ ์—ญํ• ์„ ํ•œ๋‹ค. ํฌ์ธํ„ฐ์™€ ๋น„๊ตํ•ด๋ณด์•˜์„ ๋•Œ ์•„๋ž˜ ์ฝ”๋“œ์—์„œ *ptr๊ณผ ref๋Š” ๋™์ผํ•˜๊ฒŒ ํ‰๊ฐ€๋œ๋‹ค. (ptr์€ &ref์™€ ๋™์ผํ•˜๊ฒŒ ํ‰๊ฐ€) ์ฐธ์กฐํ˜•์€ ์„ ์–ธ๊ณผ ๋™์‹œ์— ์œ ํšจํ•œ ๊ฐ์ฒด๋กœ ์ดˆ๊ธฐํ™”ํ•ด์•ผํ•˜๊ณ ..
_์ฃผ๋…ธ
'๐Ÿ’ฌ Language/C++' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก