ÇÁ·Î±×·¡¹Ö
ù ÆäÀÌÁö ·£´ý ±Û ȸ¿ø°¡ÀÔ ·Î±×ÀÎ
ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 09:21:48
URL https://te31.com/rgr/view.php?id=study&no=1171 ¸ð¹ÙÀÏ È­¸é
[C++] friend ÇÔ¼ö Áú¹®

friend ÇÔ¼ö¸¦ ¹è¿ü½À´Ï´Ù
±³¼ö´ÔÀÌ ÀÌ ÇÔ¼ö´Â Áß¿äÇؼ­ ½ÇÁ¦·Î ¸¹ÀÌ ¾´´Ù°í Çϼ̴µ¥ ÀÎÅͳÝÀ¸·Î °Ë»öÇغ¸´Ï Àº´Ð¼º¿¡ À§¹Ý?µÇ¾î ÁÁÁö ¾ÊÀº Äڵ带 »ý¼ºÇÏ´Ï »ç¿ëÀ» ÀÚÁ¦ÇؾßÇÑ´Ù°í ½áÀÖ´õ¶ó°í¿ä. ¾î¶² ¸»ÀÌ »ç½ÇÀΰ¡¿ä.

±×¸®°í friendÇÔ¼ö¸¦ ÀÚ¹Ù¿Í ºñ±³ÇÏ¸é »ó¼Ó(extend) °³³äÀ¸·Î ºÁµµ µÇ´Â°Ç°¡¿ä? ±×·¸´Ù¸é C++¿¡´Â friend ÇÔ¼ö ¸»°í ´Ù¸¥ »ó¼Ó±â´ÉÀº ¾ø´Â°ÇÁö¿ä... java c c++ °°ÀÌ ¹è¿ì´Ï Çò°¥¸®±â¸¸ ÇÕ´Ï´Ù...

Àâ´ã | 1644¸íÀÌ Àоú¾î¿ä. 18.117.74.103

0
1 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 09:23:42
extend°¡ »ó¼ÓÀ» ÀǹÌÇÏ´ÂÁö´Â Àß ¸ð¸£°Ú´Âµ¥

friend´Â C++¿¡¼­ »ó¼Ó°ú´Â Á» ´Ù¸¨´Ï´Ù. »ó¼ÓÀº ´ëºÎºÐ ÀÎÅÍÆäÀ̽º³ª Ŭ·¡½º »ó¼ÓÀÌÁÒ
(ºÎ¸ð ÀÚ½Ä °ü°è)

friend´Â ¸»¾¸´ë·Î Àº´Ð¼º¿¡ À§¹ÝµÇ´Â °ÍÀÌ ¸Â½À´Ï´Ù.
ÇÏÁö¸¸ Ŭ·¡½º Àº´Ð¼ºÀÌ ³Ê¹« °­Çؼ­... (´ëºÎºÐ º¯¼ö´Â private¿¡ ¸ô¾Æ³ÖÀ¸¹Ç·Î)
ÇÊ¿äÇÒ ¶§´Â ¾²´Â °ÅÁÒ. °ü¸®¸¸ ÀڱⰡ ¾Ë¾Æ¼­ ÇØ ÁÖ¸é µË´Ï´Ù. Àß ¾²¸é ÆíÇØ¿ä
2 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 10:04:58
ÀûÀýÇÑ »ç¿ëÀº °£°áÇÑ Äڵ带 ¸¸µé¾î ÁÝ´Ï´Ù.
ÇÏÁö¸¸ ¹Ýµå½Ã friend¸¦ ½á¾ß¸¸ ÇØ°áµÇ´Â »óȲÀ̶ó¸é ¼³°è¸¦ À߸ø ÇÑ°ÍÀÔ´Ï´Ù.
Ŭ·¡½º ±¸Á¶¸¦ Á¤È®ÇÏ°Ô ÀÌÇØÇϱâ Àü¿¡´Â »ç¿ëÀ» Áö¾çÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
3 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 10:10:59
±×¸®°í ÀÚ¹Ù¿ÍÀÇ ºñ±³´Â friend¿¡ ÇØ´çÇÏ´Â ÀÚ¹Ù ±¸¹®Àº ¸ð¸£°Ú½À´Ï´Ù.
¾Æ¸¶ ¾øÀ»°Ì´Ï´Ù. (ÀÖÀ» ÇÊ¿äµµ ¾ø½À´Ï´Ù.)
ÀÚ¹ÙÀÇ extend, implement ¸ðµÎ C++¿¡¼­´Â »ó¼ÓÀ¸·Î ±¸Çö µË´Ï´Ù.

class A {
virtual void func_a(void) {}
};
class B {
virtual void func_b(void) = 0;
};
class C : public A, public B {
virtual void func_a(void) {}
virtual void func_b(void) {}
};

C++¿¡´Â interface°¡ ¾ø¾î¼­ À§Ã³·³ ´ÙÁß »ó¼ÓÀ¸·Î ±¸ÇöÇÏ°Ô µË´Ï´Ù.
func_bó·³ = 0À¸·Î ¼±¾ðÇϸé ÇØ´ç Ŭ·¡½º´Â ÀÚ¹ÙÀÇ abstract class°¡ µË´Ï´Ù.
4 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 10:55:22
Á¦°¡ C++´Â Á¿¹äÀ̱ä Çѵ¥ friend Å°¿öµå´Â º¯ÅµéÀ̳ª ¾²´Â°Å¶ó°í µé¾ú½À´Ï´Ù
5 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 11:08:28
ÀÌ°Ô ¿¹¸¦µé¾î¼­ javaÀÇ °æ¿ì submodule ³»¿¡¼­´Â Àü¿ªÀ¸·Î ¾²Áö¸¸ ¿ÜºÎ¿¡¼­´Â ¾²¸é ¾ÈµÇ´Â Ŭ·¡½ºµéÀÌ Àִµ¥ ÀÌ·± Ŭ·¡½ºµéÀÇ Á¢±Ù±ÇÇÑÀÌ public À̸é submodule ¹Ù±ù¿¡¼­µµ ÀÌ°É ÂüÁ¶ÇÒ¼ö°¡ Àְŵç¿ä

ÀÌ·±°æ¿ì java´Â Á¢±ÙÀ» ¿øõ ºÀ¼âÇÒ ±æÀÌ ¾ø¾î¼­ ÆÐÅ°Áö¸í¿¡ xxxxonly ¶ó´ø°¡ internal À̶ó´ø°¡ ÀÌ·±½ÄÀ¸·Î ±¸ºÐÇسõ°í javadoc »ó¿¡ '¿©±â Ŭ·¡½ºµéÀº ¿¹°í¾øÀÌ ¹Ù²î´Ï ¾²´Ù°¡ ¹ö±×³ªµµ ´ÏÃ¥ÀÓ' À̶õ ½ÄÀ¸·Î ó¸®Çϴµ¥

c++°°Àº °æ¿ì´Â ¸ù¶¥ ´Ù private À¸·Î Çسõ°í ²À ÇÊ¿äÇÑ Å¬·¡½ºµé¸¸ friend·Î Á¢±Ù±ÇÇÑÀ» ¿­¾îÁÖ¸é µÇ°ÚÁÒ ±Ùµ¥ º¸Åë ÀÌ·± °æ¿ì ¾Æ´Ï°í¼­´Â friend Å°¿öµå ¾²´Â°Í ÀÚü°¡ °´Ã¼ Àº´Ð À§¹ÝÀÌ¶ó º°·Î ÁÁÀº µðÀÚÀÎÀº ¾Æ´Õ´Ï´Ù.
6 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 13:43:44
friend ÇÔ¼ö´Â ´ëÇж§ ÀÌÈÄ·Î º»ÀûÀÌ ¾ø³×¿ä
7 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 13:43:51
ÄÚ¸Û´Ô ¸»¾¸´ë·Î friend´Â OOP¿¡ Á» ¸¹ÀÌ ¾È¾î¿ï¸®´Â ¹æ½ÄÀÔ´Ï´Ù.

Àú´Â ±×·¡¼­ ¸· ¾²°í ÀÖÁÒ (º´½Å)
8 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-28 15:02:30
Àúµµ friend´Â Ŭ·¡½º ³»ºÎ¿¡¼­
cout << operator overloading ÇÒ¶§ »©°í´Â º» Àû ¾ø´Â°Å °°³×¿ä
9 ºñ°ø°³ ¼Õ´Ô ¡¦ 2015-04-29 02:10:08
°¨»çÇÕ´Ï´Ù
´ñ±ÛÀ» ÀÛ¼ºÇÏ½Ç ¼ö ¾ø½À´Ï´Ù.
(±ÇÇÑÀÌ ¾ø´Â ȸ¿ø·¹º§)
¸ñ·ÏÀ¸·Î
¡â ÀÌÀü±Û: CSS µð¹ö±ë Áú¹®ÀÔ´Ï´Ù [5]
¡ä ´ÙÀ½±Û: Äõ¸® À߾ƽôºÐ..(¿À¶óŬ) [4]
ÀÌ¿ë¾à°ü | ±¤°í/Á¦ÈÞ | °³ÀÎÁ¤º¸Ãë±Þ¹æħ | ¹®ÀÇ/½Å°í | ¸ð¹ÙÀÏ TE31 | ¼­¹ö ºÎÇÏ : 9%
½Ç½Ã°£ Issue Ä¿¹Â´ÏƼ TE31 [¾ËÁö·Õ] ¨Ï 2002-2024
TOP arrow_upward