25-3-´Ù.¾×¼¼½º ÁöÁ¤

±¸Á¶Ã¼ÀÇ ¸â¹ö´Â ¿ÜºÎ¿¡¼­ ¾ðÁ¦µçÁö ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. ¾Õ ¿¹Á¦¿¡¼­ º¸¾Ò´Ù½ÃÇÇ main¿¡¼­ Here.x¸¦ ÀÐÀ» ¼öµµ ÀÖ°í »õ·Î¿î °ªÀ» ´ëÀÔÇÒ ¼öµµ ÀÖÀ¸¸ç HereÀÇ ¸â¹ö ÇÔ¼ö OutPositionÀ» È£ÃâÇÏ¿© ¾î¶² µ¿ÀÛÀ» ÇÒ ¼öµµ ÀÖ´Ù.

 

Position Here;

Here.x=20;                            // ±¸Á¶Ã¼ÀÇ ¸â¹ö¿¡ °ª ´ëÀÔ

Here.OutPosition();           // ±¸Á¶Ã¼ÀÇ ¸â¹ö ÇÔ¼ö È£Ãâ

 

ºñ´Ü ±¸Á¶Ã¼ÀÇ ¸â¹ö »Ó¸¸ ¾Æ´Ï¶ó ¼±¾ðµÇ¾î ÀÖ´Â º¯¼ö¸¦ ÂüÁ¶Çϰųª ÀÛ¼ºµÇ¾î ÀÖ´Â ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ÀÖ´Â °ÍÀº C ¼öÁØ¿¡¼­´Â ´ç¿¬ÇÑ ¾ê±â´Ù. ±×·¯³ª ±¸Á¶Ã¼ ³»ºÎÀÇ ¸â¹ö¸¦ ¿ÜºÎ¿¡¼­ ¸¶À½´ë·Î °Çµå¸®µµ·Ï ³» ¹ö·Á µÎ¸é ºÎÁÖÀÇÇÑ »ç¿ëÀ¸·Î ÀÎÇØ ¹ö±×°¡ ¹ß»ýÇÒ ¼ö ÀÖ¾î À§ÇèÇÒ »Ó¸¸ ¾Æ´Ï¶ó °´Ã¼ÀÇ µ¶¸³¼ºµµ ¶³¾îÁø´Ù. ±×·¡¼­ C++¿¡¼­´Â ±¸Á¶Ã¼(¶Ç´Â Ŭ·¡½º)ÀÇ ¸â¹ö¿¡ ´ëÇÑ ¿ÜºÎÀÇ ÂüÁ¶¸¦ Çã°¡ÇÒ °ÍÀÎÁö ±ÝÁöÇÒ °ÍÀÎÁö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. À̸¦ ¾×¼¼½º ÁöÁ¤À̶ó°í Çϴµ¥ ´ÙÀ½ ¼¼ °¡Áö Á¾·ù°¡ ÀÖ´Ù.

 

¡á private : ÀÌ ¼Ó¼ºÀ» °¡Áö´Â ¸â¹ö´Â ¿ÜºÎ¿¡¼­ ¾×¼¼½ºÇÒ ¼ö ¾øÀ¸¸ç ±¸Á¶Ã¼ÀÇ ¸â¹ö ÇÔ¼ö¸¸ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù. ¿ÜºÎ¿¡¼­´Â ÇÁ¶óÀ̺ñÆ® ¸â¹ö¸¦ ÀÐÀ» ¼ö ¾øÀ½Àº ¹°·ÐÀ̰í Á¸Àç ÀÚüµµ ¾Ë·ÁÁöÁö ¾Ê´Â´Ù.

¡á public : ÀÌ ¼Ó¼ºÀ» °¡Áö´Â ¸â¹ö´Â ¿ÜºÎ·Î °ø°³µÇ¾î ´©±¸³ª ÀÐ°í ¾µ ¼ö ÀÖ°í ÇÔ¼öÀÇ °æ¿ì´Â È£ÃâÇÒ ¼ö ÀÖ´Ù. ±¸Á¶Ã¼°¡ ÀÚ½ÅÀÇ ¼Ó¼ºÀ̳ª µ¿ÀÛÀ» ¿ÜºÎ·Î °ø°³ÇÏ´Â ¼ö´ÜÀÌ µÇ¸ç ÆÛºí¸¯ ¸â¹ö¸¦ ¼ÒÀ§ ÀÎÅÍÆäÀ̽º¶ó°í ÇÑ´Ù.

¡á protected : private¿Í ¸¶Âù°¡Áö·Î ¿ÜºÎ¿¡¼­´Â ¾×¼¼½ºÇÒ ¼ö ¾øÀ¸³ª ´Ü, »ó¼ÓµÈ ÆÄ»ý Ŭ·¡½º´Â ÀÌ ¸â¹ö¸¦ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù. ÇÁ¶óÀ̺ñÆ® ¸â¹ö´Â ÆÄ»ý Ŭ·¡½º¿¡¼­Á¶Â÷µµ ÂüÁ¶ÇÒ ¼ö ¾øÀ¸¸ç ¿À·ÎÁö ÀڽŸ¸ÀÌ ÀÌ ¸â¹ö¸¦ ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù´Â Á¡ÀÌ ´Ù¸£´Ù.

 

¾×¼¼½º ÁöÁ¤ÀÚ´Â ±¸Á¶Ã¼ ¼±¾ð¹® ³»¿¡¼­¸¸ »ç¿ëµÇ´Âµ¥ ´Ù¸¥ ¾×¼¼½º ÁöÁ¤ÀÚ°¡ ³ª¿Ã ¶§±îÁö °è¼Ó ÀÌ ¼Ó¼ºÀÌ Àû¿ëµÈ´Ù. ¾×¼¼½º ÁöÁ¤ÀÚ »çÀ̰¡ ÇÑ ºí·ÏÀÌ µÇ¾î ÀÌ ºí·Ï¿¡ ¼±¾ðµÈ ¸â¹öµéÀÇ ¾×¼¼½º ¼Ó¼ºÀ» ÁöÁ¤ÇÑ´Ù. ´ÙÀ½ ¿¹¸¦ º¸ÀÚ.

 

¿¹ Á¦ : BaboAccess

#include <Turboc.h>

 

struct Babo

{

private:

     int a;

     double b;

     char ch;

     void Initialize();

public:

     int x;

     int y;

     void func(int i);

protected:

     float k;

};

 

void main()

{

     Babo Kim;

     Kim.a=1;                // ¿¡·¯

     Kim.x=10;               // ´ëÀÔ °¡´É

     Kim.func(3);           // È£Ãâ °¡´É

     Kim.Initialize();       // ¿¡·¯

}

 

Babo ±¸Á¶Ã¼¾È¿¡ ¿©·¯ °¡Áö ¸â¹ö º¯¼ö¿Í ¸â¹ö ÇÔ¼ö°¡ ¼±¾ðµÇ¾î Àִµ¥ °¢°¢ ¼±¾ðµÈ ¿µ¿ªÀÌ ´Ù¸£´Ù. a, b, ch ¸â¹ö´Â ºñ°ø°³ ¿µ¿ª¿¡ ÀÖÀ¸¹Ç·Î ¿ÜºÎ¿¡¼­ ÀÌ ¸â¹ö¸¦ ÀÐÀ» ¼ö ¾øÀ¸¸ç initialize ÇÔ¼öµµ ¿ÜºÎ¿¡¼­ È£ÃâÇÒ ¼ö ¾ø´Ù. ¹Ý¸é x, y´Â °ø°³µÈ ¿µ¿ª¿¡ ¼±¾ðµÇ¾î ÀÖÀ¸¹Ç·Î ¿ÜºÎ¿¡¼­ ¸¶À½´ë·Î ¾×¼¼½ºÇÒ ¼ö ÀÖ°í func ÇÔ¼öµµ ¿ÜºÎ¿¡¼­ È£ÃâÇÒ ¼ö ÀÖ´Ù. º¸È£ ¿µ¿ª¿¡ ÀÖ´Â k´Â ¿ÜºÎ¿¡¼­´Â ¾×¼¼½ºÇÒ ¼ö ¾øÀ¸¸ç Ŭ·¡½º ³»ºÎ³ª »ó¼ÓµÈ ÆÄ»ý Ŭ·¡½º¸¸ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù. ¸¸¾à ºñ°ø°³ ¶Ç´Â º¸È£µÈ ¸â¹ö¸¦ ¾×¼¼½ºÇϸé ÄÄÆÄÀÏ·¯´Â ÀÌ·± ½Ãµµ¸¦ ¿¡·¯·Î ó¸®ÇÑ´Ù.

¾×¼¼½º ÁöÁ¤ÀÚÀÇ ¼ø¼­¿¡ ´ëÇÑ Á¦¾àÀº ¾øÀ¸¸ç Çʿ信 µû¶ó ¿©·¯ ¹ø Áߺ¹µÉ ¼öµµ ÀÖ´Ù. private: °¡ ¸ÕÀú ³ª¿À°í public: ÀÌ ³ª¿Â ÈÄ ´Ù½Ã private: °¡ ³ª¿Íµµ »ó°ü¾ø´Ù. ±×·¯³ª °¡±ÞÀû °°Àº ¾×¼¼½º ¼Ó¼ºÀ» °¡Áö´Â ¸â¹ö´Â ÇÑ °÷¿¡ ¸ðÀ¸´Â °÷ÀÌ º¸±â¿¡ ÁÁ´Ù. Åë»ó private, protected, public ¼øÀ¸·Î ¼±¾ðÇÑ´Ù.

¾×¼¼½º ÁöÁ¤ÀÚ¸¦ »ç¿ëÇÏ¿© ƯÁ¤ ¸â¹ö¸¦ ¼û±æ ¼ö ÀÖ´Â OOPÀÇ ±â´ÉÀ» Á¤º¸ ÀºÆó¶ó°í ÇÑ´Ù. ±×·¸´Ù¸é ¼±¾ðµÈ ¸â¹ö¸¦ ¿ÜºÎ¿¡¼­ ¾×¼¼½ºÇÏÁö ¸øÇϵµ·Ï ¼û°Ü¾ß ÇÏ´Â ÀÌÀ¯´Â ¹«¾ùÀÌ¸ç ¼û±â¸é ¾î¶² ÀÌÁ¡ÀÌ ÀÖÀ»±î? Á¤º¸ ÀºÆó´Â °´Ã¼ÀÇ ¾ÈÀü¼ºÀ» È®º¸ÇÏ°í µ¶¸³¼ºÀ» ³ôÀ̴µ¥ ÀÌ´Â ¹«Ã´ Å« ÁÖÁ¦À̹ǷΠ27 Àå¿¡¼­ µû·Î »ó¼¼ÇÏ°Ô ´Ù·ê °ÍÀÌ´Ù. ¿©±â¼­´Â ¾×¼¼½º ÁöÁ¤ÀÚÀÇ °³³ä¸¸ ÆÄ¾ÇÇϵµ·Ï ÇÏÀÚ.