Ŭ·¡½º³ª ±¸Á¶Ã¼ÀÇ ¸â¹ö¸¦ ÂüÁ¶ÇÏ´Â ¿¬»êÀÚ¿¡´Â . °ú -> µÎ °¡Áö°¡ ÀÖ´Ù. ÀÌÁß . ¿¬»êÀڴ Ŭ·¡½º¸¦ ÇÁ·Î±×·¡¹ÖÇÏ´Â ³Ê¹« ±âº»ÀûÀÎ ¿¬»êÀÚÀ̹ǷΠ¿À¹ö·ÎµùÇÒ ¼ö ¾øÀ¸¸ç °´Ã¼ÀÇ Æ÷ÀÎÅͷκÎÅÍ ¸â¹ö¸¦ Àд ->¿¬»êÀÚ´Â ¿À¹ö·Îµù ´ë»óÀÌ´Ù. ÀÌ ¿¬»êÀÚ´Â ´Ù¸¥ ¿¬»êÀÚ¿Í´Â ´Ù¸¥ µ¶Æ¯ÇÑ ¿À¹ö·Îµù ±ÔÄ¢ÀÌ Àû¿ëµÇ´Âµ¥ ¿ø·¡ ÀÌÇ× ¿¬»êÀÚÀÌÁö¸¸ ¿À¹ö·ÎµùÇÏ¸é ´ÜÇ× ¿¬»êÀÚ°¡ µÇ¸ç Àü¿ª ÇÔ¼ö·Î´Â Á¤ÀÇÇÒ ¼ö ¾ø°í Ŭ·¡½ºÀÇ ¸â¹ö ÇÔ¼ö·Î¸¸ Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. ¸â¹ö ÇÔ¼öÀÌ¸é¼ ´ÜÇ×À̹ǷΠ°á±¹ Àμö¸¦ ÃëÇÏÁö ¾Ê´Â´Ù.
ÀÌ ¿¬»êÀÚÀÇ ¸®ÅÏ Å¸ÀÔÀº Ŭ·¡½º³ª ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ·Î °íÁ¤µÇ¾î ÀÖ´Ù. º¸Åë Ŭ·¡½º¿¡ Æ÷ÇÔµÈ ´Ù¸¥ Ŭ·¡½º °´Ã¼³ª ±¸Á¶Ã¼ÀÇ ¹øÁö¸¦ ¸®ÅÏÇÏ¿© Æ÷ÇÔµÈ °´Ã¼ÀÇ ¸â¹ö¸¦ Àд ¿ëµµ·Î »ç¿ëµÈ´Ù. ÀÌ ¿¬»êÀÚ¸¦ ¿À¹ö·ÎµùÇÏ¸é Æ÷ÇÔ °´Ã¼ÀÇ ¸â¹ö¸¦ ¸¶Ä¡ ÀÚ½ÅÀÇ ¸â¹öó·³ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº °£´ÜÇÑ ¿¹Á¦ÀÌ´Ù.
|
¿¹ Á¦ : MemberAccessOp |
#include <Turboc.h>
struct Author {
char Name[32];
char Tel[24];
int Age;
};
class Book
{
private:
char Title[32];
Author Writer;
public:
Book(const char *aTitle,const char *aName,int aAge) {
strcpy(Title,aTitle);
strcpy(Writer.Name,aName);
Writer.Age=aAge;
}
Author *operator->() { return &Writer; }
const char *GetTitle() { return Title; }
};
void main()
{
Book Hyc("È¥ÀÚ ¿¬±¸ÇÏ´Â C/C++","±è»óÇü",25);
printf("Á¦¸ñ:%s, ÀúÀÚ:%s, ÀúÀÚ ³ªÀÌ:%d¼¼\n",Hyc.GetTitle(),Hyc->Name,Hyc->Age);
}
Book Ŭ·¡½º¾È¿¡ ÀúÀÚÀÇ ½Å»óÀ» Ç¥ÇöÇÏ´Â Author °´Ã¼ Writer°¡ ¸â¹ö·Î Æ÷ÇԵǾî ÀÖ°í ÀÌ ¸â¹öÀÇ ¹øÁö¸¦ ¸®ÅÏÇÏ´Â -> ¿¬»êÀÚ°¡ Á¤ÀǵǾî ÀÖ´Ù. ¿ÜºÎ¿¡¼ Book °´Ã¼ÀÇ Writer ¸â¹ö¿¡ Á¢±ÙÇÏ·Á¸é . ¿¬»êÀÚ¸¦ µÎ ¹ø ¿¬°ÅǪ »ç¿ëÇØ¾ß ÇÏÁö¸¸ ->¸¦ ¾²¸é WriterÀÇ ¸â¹ö¸¦ ¸¶Ä¡ Book °´Ã¼ÀÇ ¸â¹öÀÎ °Íó·³ ¹Ù·Î ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù. ½ÇÇà °á°ú´Â ´ÙÀ½°ú °°´Ù.
Á¦¸ñ:È¥ÀÚ ¿¬±¸ÇÏ´Â C/C++, ÀúÀÚ:±è»óÇü, ÀúÀÚ ³ªÀÌ:25¼¼
Hyc->NameÀ¸·Î Writer Æ÷ÇÔ °´Ã¼ÀÇ ¸â¹ö¸¦ Àоú´Âµ¥ º¸´Ù½ÃÇÇ NameÀÌ Hyc°´Ã¼ÀÇ ¸â¹öÀÎ °Íó·³ »ç¿ëµÇ°í ÀÖ´Ù. ¿ø·¡ -> ¿¬»êÀÚÀÇ Áº¯¿¡´Â Æ÷ÀÎÅ͸¸ ¿Ã ¼ö ÀÖÁö¸¸ ¿À¹ö·ÎµùµÇ¸é °´Ã¼°¡ ¿Íµµ »ó°ü¾ø´Ù. ¾îÂ÷ÇÇ ¿À¹ö·ÎµùµÈ -> ¿¬»êÀÚ°¡ Æ÷ÀÎÅ͸¦ ¸®ÅÏÇÑ´Ù. ÀÌ Ç¥Çö½ÄÀº ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ ´ÙÀ½°ú °°ÀÌ ÇØ¼®µÈ´Ù.
Hyc.operator->()->Name
-> ¿¬»êÀÚ°¡ &Writer¸¦ ¸®ÅÏÇϹǷΠÀÌ Æ÷ÀÎÅͷκÎÅÍ WriterÀÇ ¸â¹ö¸¦ ¹Ù·Î ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù. Æ÷ÇÔ °´Ã¼ÀÇ ¸â¹ö¸¦ Àбâ À§ÇØ Hyc.Writer.Name ÀÌ·± ½ÄÀ¸·Î . ¿¬»êÀÚ¸¦ µÎ ¹ø »ç¿ëÇÏ´Â °ÍÀº Çã°¡µÇÁö ¾Ê´Âµ¥ Writer°¡ ÇÁ¶óÀ̺ñÆ® ¾×¼¼½º ¼Ó¼ºÀ» °¡Áö°í Àֱ⠶§¹®ÀÌ´Ù. -> ¿¬»êÀÚ´Â ¼û°ÜÁø ¸â¹öÀÇ Æ÷ÀÎÅ͸¦ Àоî Áܰú µ¿½Ã¿¡ ÀÌ ¸â¹ö¿¡ ¼ÓÇÑ ¸â¹ö¸¦ ¹Ù·Î ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï Áß°èÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù.
-> ¿¬»êÀÚ´Â º¸Åë ½º¸¶Æ® Æ÷ÀÎÅͶó ºÒ¸®´Â Æ÷ÀÎÅ͸¦ Èä³»³»´Â Ŭ·¡½º¸¦ ¸¸µé±â À§ÇØ »ç¿ëµÇ¸ç Æ÷ÀÎÅÍÀÇ À¯È¿¼º Á¡°ËÀ̳ª »ç¿ë Ä«¿îÆ® À¯Áö ±â´ÉÀ» ±¸ÇöÇÑ´Ù. ¾î¶² °´Ã¼¸¦ ·¡ÇÎÇϴ Ŭ·¡½º¸¦ ¸¸µé ¶§ ·¡ÇÎÇÑ °´Ã¼°¡ ·¡ÇÎµÈ °´Ã¼ÀÎ °Íó·³ µ¿ÀÛÇØ¾ß ÇϹǷΠ-> ¿¬»êÀÚ·Î ·¡ÇÎµÈ °´Ã¼ÀÇ ¸â¹ö¸¦ ¹Ù·Î ¾×¼¼½ºÇÒ ¼ö ÀÖ¾î¾ß ÇÏ´Â °ÍÀÌ´Ù.