â—Ž ë””í�´íЏ ì „ë‹¬ì�¸ìž�
C++ì�˜ 새로운 특징 중 하나ì�¸ ë””í�´íЏ ì „ë‹¬ì�¸ìž�를 살펴보ìž�. ë””í�´íЏ ì „ë‹¬ì�¸ìž�는 함수ì�˜ 호출ì—�서 대ì�‘ë�˜ëŠ” ì‹¤ì œ 매개변수를 ë¹ ëœ¨ë ¸ì�„ 때 ìž�ë�™ì �으로 사용ë�˜ëŠ” ê°’ì�´ë‹¤.
C++ì�˜ 새로운 특징 중 하나ì�¸ ë””í�´íЏ ì „ë‹¬ì�¸ìž�를 살펴보ìž�. ë””í�´íЏ ì „ë‹¬ì�¸ìž�는 함수ì�˜ 호출ì—�서 대ì�‘ë�˜ëŠ” ì‹¤ì œ 매개변수를 ë¹ ëœ¨ë ¸ì�„ 때 ìž�ë�™ì �으로 사용ë�˜ëŠ” ê°’ì�´ë‹¤.
ì „ë‹¬ì�¸ìž� 리스트를 ê°€ì§€ê³ í•¨ìˆ˜ë¥¼ ì‚¬ìš©í• ë•Œì—�는 ë””í�´íЏ ì „ë‹¬ì�¸ìž�를 오른쪽ì—�서 왼쪽ì�˜ 순서로 첨가해야 한다. 즉, ì–´ë–¤ ì „ë‹¬ì�¸ìž�ì�˜ ê°’ì�„ ë‚´ì •í•˜ë ¤ë©´ ê·¸ ì „ë‹¬ì�¸ìž�보다 오른쪽ì—� 있는 ëª¨ë“ ì „ë‹¬ì�¸ìž�를 ë””í�´íЏ ì „ë‹¬ì�¸ìž�로 해야 한다.
int harpo(int, int m = 4, int j = 5); //맞�
int chico(int n, int m = 6, int j); //틀림
int groucho(int k = 1, int m = 2, int n = 3); //맞�
int chico(int n, int m = 6, int j); //틀림
int groucho(int k = 1, int m = 2, int n = 3); //맞�
beeps = harpo(2); //harpo(2,4,5)와 같�
beeps = harpo(1,8); //harpo(1,8,5)와 같�
beeps = harpo(8,7,6); //ë””í�´íЏ ì „ë‹¬ì�¸ìž�를 사용하지 않ì�Œ
beeps = harpo(1,8); //harpo(1,8,5)와 같�
beeps = harpo(8,7,6); //ë””í�´íЏ ì „ë‹¬ì�¸ìž�를 사용하지 않ì�Œ
ì‹¤ì œ ì „ë‹¬ì�¸ìž�는 왼쪽ì—�서 오른쪽으로 가면서 해당 형ì‹� ì „ë‹¬ì�¸ìž�ì—� 대입ë�œë‹¤. ì „ë‹¬ì�¸ìž�를 건너뛸 수는 없다. ë”°ë�¼ì„œ 다ì�Œê³¼ ê°™ì�€ 것ì�€ 허용ë�˜ì§€ 않는다.
beep = harpo(3, ,8); //mì�„ 4로 ì„¤ì •í•˜ì§€ 않았으므로 틀림
8.7 ì°¸ê³ -ë””í�´íЏ ì „ë‹¬ì�¸ìž�를 가진 문ìž�ì—´ 함수
â—Ž 함수ì�˜ 다형성(함수ì�˜ ìž¬ì •ì�˜)
다ì�Œì�€ 함수ì�˜ 다형성ì—� 대하여 알아보ìž�. ë””í�´íЏ ì „ë‹¬ì�¸ìž�는 개수를 변화시켜 가면서 ê°™ì�€ 함수를 호출하게 했다. 함수ì�˜ 다형성ì�€ 함수ì�˜ ìž¬ì •ì�˜ë�¼ê³ ë�„ 하는ë�°, ì�´ëŠ” 여러 ê°œì�˜ 함수가 ê°™ì�€ ì�´ë¦„ì�„ ì‚¬ìš©í• ìˆ˜ 있게 해준다. ‘다형성’ì�´ë�¼ëŠ” 표현ì�€ ë§Žì�€ 형태를 가질 수 있게 í•´ 준다.
다ì�Œì�€ 함수ì�˜ 다형성ì—� 대하여 알아보ìž�. ë””í�´íЏ ì „ë‹¬ì�¸ìž�는 개수를 변화시켜 가면서 ê°™ì�€ 함수를 호출하게 했다. 함수ì�˜ 다형성ì�€ 함수ì�˜ ìž¬ì •ì�˜ë�¼ê³ ë�„ 하는ë�°, ì�´ëŠ” 여러 ê°œì�˜ 함수가 ê°™ì�€ ì�´ë¦„ì�„ ì‚¬ìš©í• ìˆ˜ 있게 해준다. ‘다형성’ì�´ë�¼ëŠ” 표현ì�€ ë§Žì�€ 형태를 가질 수 있게 í•´ 준다.
함수 ìž¬ì •ì�˜ì�˜ 중요한 ì—´ì‡ ëŠ” 함수ì�˜ ì „ë‹¬ì�¸ìž� 리스트ì�¸ë�°, ì�´ê²ƒì�„ 함수ì�˜ 시그내처ë�¼ê³ ë�„ 한다.
8.8 ì°¸ê³ -left() 함수ì�˜ ìž¬ì •ì�˜










