¼Ò¼³°°ÀºC#  Á¦2°­ÀÇ Å¬·¡½ºÀÇ ±âº»¹è°æ  12. °ªÅ¸ÀÔ(Value Type)  

 

2.12 °ªÅ¸ÀÔ(Value Type)

 

 

°ªÅ¸ÀÔÀÇ ¿ø¸®ºÎÅÍ ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. °ªÅ¸ÀÔÀº »ý¼º ½ÃÁ¡°ú ¸Þ¸ð¸®¿ÍÀÇ °ü°è¿¡¼­ µÎ°¡Áö Ãø¸é¿¡¼­ »ìÆì º¼ ¼ö ÀÖ½À´Ï´Ù.

 

¢Ã °ªÅ¸ÀÔ(Value Type)ÀÇ Æ¯Â¡

q                °ªÅ¸ÀÔÀÇ µ¥ÀÌÅÍŸÀÔÀ¸·Î º¯¼ö¸¦ ¼±¾ðÇßÀ» ¶§ º¯¼öÀÇ ¼±¾ð°ú µ¿½Ã¿¡ ¸Þ¸ð¸®°¡ »ý¼ºµÈ´Ù.

q                °ªÅ¸ÀÔÀÇ º¯¼ö´Â ¸Þ¸ð¸® ÀÚü¸¦ Á÷Á¢ °¡¸£Å°°í ÀÖ´Ù.

 

°ªÅ¸ÀÔÀº ¿ì¼± ¼±¾ð ÀÚü°¡ ¸Þ¸ð¸®ÀÇ »ý¼ºÀÇ Àǹ̸¦ ´ã°í Àֱ⠶§¹®¿¡ new ¿¬»êÀÚ¸¦ »ç¿ëÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù.

 

n                  int a;

 

ÀÌ·¸°Ô¸¸ ÇØµµ ¸Þ¸ð¸®´Â »ý¼ºÀÌ µË´Ï´Ù. Áï, 4¹ÙÀÌÆ®ÀÇ ¸Þ¸ð¸®°¡ »ý¼ºµÈ °ÍÀÔ´Ï´Ù. ¹¬½ÃÀûÀ¸·Î ³»ºÎ¿¡¼­ ¸Þ¸ð¸® »ý¼ºÀÌ ÀÌ·ç¾îÁö´Â °ÍÀÔ´Ï´Ù. ±×¸®°í aÀÚü´Â ¸Þ¸ð¸®¸¦ ±×´ë·Î °¡¸®Å°°Ô µÇ´Â °ÍÀÔ´Ï´Ù. ÀÌ °³³äÀº ¸ðµç °ªÅ¸ÀÔ(Value Type)¿¡¼­ ºÒº¯ÀÇ ¹ýÄ¢ÀÔ´Ï´Ù.

 

°ªÅ¸ÀÔÀ» »ç¿ëÇÒ ¶§ ¿©·¯ºÐÀÌ ÁÖÀÇÇÒ °ÍÀº ¹Ù·Î °ªÅ¸ÀÔ³¢¸®ÀÇ ÇÒ´ç¿¡¼­ ¾î¶»°Ô ¸Þ¸ð¸®ÀÇ °ªÀÌ º¹»ç µÇ¾îÁö´À³ÄÀÇ ¹®Á¦ÀÔ´Ï´Ù.

 

¢Ñ  °ªº¹»çÀÇ ¿ë¾î

¿©±â¼­ ¸»ÇÏ´Â ¸Þ¸ð¸®ÀÇ °ªº¹»ç´Â ¸Þ¸ð¸®¸¦ º¹»çÇÏ¿© »õ·Î »ý¼ºÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó µÎ°³ÀÇ ¸Þ¸ð¸®°¡ Á¸ÀçÇÏ°í ±×¸®°í ÇÑÂÊÀÇ ¸Þ¸ð¸®¿¡ µé¾î ÀÖ´Â °ªÀ» ¾î¶»°Ô ´Ù¸¥ ÂÊÀÇ ¸Þ¸ð¸®·Î °ªÀ» º¹»çÇÏ´À³ÄÀÇ ¹®Á¦ÀÔ´Ï´Ù.

 

´ÙÀ½°ú °°Àº ÄÚµåÀÇ °æ¿ì, ÇÒ´çÀÇ ±âº»¿ø¸®´Â ¾ÆÁÖ ´Ü¼øÇÕ´Ï´Ù.

 

n                  int a = 5;

n                  int b;

n                  b = a;

 

¾ÆÁÖ ´Ü¼øÇÑ ±¸¹®ÀÌÁö¸¸ À̰ÍÀÇ ¿ø¸®¸¦ Á¦´ë·Î ÀÌÇØÇÑ´Ù¸é °ªÅ¸ÀÔ »Ó¸¸ ¾Æ´Ï¶ó ÂüÁ¶ ŸÀÔ±îÁö ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. À§ÀÇ Äڵ忡¼­ a¶ó´Â ¸Þ¸ð¸®´Â ÀÌ¹Ì »ý¼ºµÇ¾ú½À´Ï´Ù. ¼±¾ð°ú ÇÒ´çÀ» µ¿½Ã¿¡ Çϰí ÀÖÁö¸¸ ¼±¾ð°ú µ¿½Ã¿¡ ¸Þ¸ð¸®°¡ Á¸ÀçÇϱ⠶§¹®¿¡ ÇÒ´çÀÌ ÀÌ·ç¾îÁø °ÍÀÔ´Ï´Ù. ±×¸®°í b¶ó´Â ¸Þ¸ð¸® ¶ÇÇÑ »ý¼ºÀÌ µÇ¾ú½À´Ï´Ù. a¸¦ b¿¡ ÇÒ´çÇϰí ÀÖ½À´Ï´Ù. ¹®Á¦´Â b = a ¶ó´Â ±¸¹®¿¡¼­ ¾î¶»°Ô ÇÒ´çÀÌ ÀÌ·ç¾îÁö´À³ÄÀÇ ¹®Á¦ÀÔ´Ï´Ù. ¹°·Ð, b´Â 5ÀÇ °ªÀ» °¡Áö°Ô µÉ °ÍÀÔ´Ï´Ù. ÇÏÁö¸¸ b¿¡ µé¾î ÀÖ´Â 5°¡ ¾î¶°ÇÑ ¿ø¸®¿¡ ÀÇÇØ¼­ ÇÒ´ç µÇ´Â °ÍÀϱî¿ä? ´ÙÀ½ÀÇ ±×¸²¿¡¼­ ±× ÇØ´äÀ» ã¾Æ º¸½Ã±â ¹Ù¶ø´Ï´Ù.

 

 

±×¸² 2-3 °ªÅ¸ÀÔ(Value Type)ÀÇ ÇÒ´ç

 

¸Þ¸ð¸®´Â a, b µÑ´Ù Á¸ÀçÇÕ´Ï´Ù. ¼±¾ðÀ» ÇßÀ¸´Ï °ªÅ¸ÀÔÀº ¹«Á¶°ÇÀûÀ¸·Î ¸Þ¸ð¸®¸¦ »ý¼ºÇÕ´Ï´Ù. ±×¸®°í ¸Þ¸ð¸®°¡ µÑ´Ù Á¸ÀçÇÏ´Â »óÅ¿¡¼­ ¡®b = a¡¯ ÀÇ Àǹ̴ aÀÇ ¸Þ¸ð¸®¿¡ ÀÖ´Â °ªÀ» ´Ù¸¥ ¸Þ¸ð¸® b·Î °ªº¹»ç¸¦ Çϰڴٴ ÀǹÌÀÔ´Ï´Ù. Áï, b´Â a¿¡ ÀÖ´Â °ª¸¸À» ÀÚ½ÅÀÇ ¸Þ¸ð¸®·Î º¹»çÇØ ¿À´Â °ÍÀÔ´Ï´Ù. °ªÅ¸ÀÔÀº ¸Þ¸ð¸®°¡ µÑ´Ù Á¸ÀçÇÏ´Â »óÅ¿¡¼­ ÇÑÂÊÀÇ ¸Þ¸ð¸®¿¡ µé¾î ÀÖ´Â °ªÀ» º¹»çÇØ¿Â´Ù´Â ÀǹÌÀÔ´Ï´Ù.

 

Call By Value¶ó´Â ¿ë¾îµµ ÀÌ·¯ÇÑ ¿ø¸® ¶§¹®¿¡ Value¶ó´Â ¿ë¾î°¡ »ç¿ëµÇ´Â °ÍÀÔ´Ï´Ù. Áï, ¸Å°³º¯¼ö·Î °ªÀ» Àü´Þ ÇÒ ¶§ ¸Þ¸ð¸® ÁÖ¼Ò·Î ÂüÁ¶ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó °ªÀ» º¹»çÇÑ´Ù´Â ÀǹÌÀÔ´Ï´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºC# Á¦2°­ÀÇ
ÀúÀÚ:ÃÖ¿µ°ü