2024/03/05 2
-
10. C++의 까다롭고 유별난 부분들 C++언어에는 까다로운 문법이나 특이한 의미를 가지는 부분이 많다. 이런 부분이 유별나기는 하지만 C++프로그래머로서 계속 적응하다 보면 어느새 자연스럽게 느껴지기 시작한다. 하지만 어떤 부분은 계속해서 혼란을 야기하기도 한다. 속 시원하게 설명해주는 책이 없거나 자꾸 잊어버려서 다시 찾아봐야 한다거나 둘 중 하나 또는 둘 다가 원인일 것이다. 이 장에서는 가장 끈질기게 프로그래머를 괴롭히는 C++의 까다롭고 유별난 부분을 명쾌하게 설명함으로써 반복되는 혼란을 줄여보고자 한다. 10.1 참조형 전문 개발자가 작성한 C++코드에서는 참조형이 광범위하게 사용된다. 참조형의 정체가 무엇이고, 그 행동 방식은 어떤지 이해하면 큰 도움이 된다. C++에서 참조(referen..
-
문제 설명 전무로 승진한 라이언은 기분이 너무 좋아 프렌즈를 이끌고 특별 휴가를 가기로 했다. 내친김에 여행 계획까지 구상하던 라이언은 재미있는 게임을 생각해냈고 역시 전무로 승진할만한 인재라고 스스로에게 감탄했다. 라이언이 구상한(그리고 아마도 라이언만 즐거울만한) 게임은, 카카오 프렌즈를 두 팀으로 나누고, 각 팀이 같은 곳을 다른 순서로 방문하도록 해서 먼저 순회를 마친 팀이 승리하는 것이다. 그냥 지도를 주고 게임을 시작하면 재미가 덜해지므로, 라이언은 방문할 곳의 2차원 좌표 값을 구하고 각 장소를 이진트리의 노드가 되도록 구성한 후, 순회 방법을 힌트로 주어 각 팀이 스스로 경로를 찾도록 할 계획이다. 라이언은 아래와 같은 특별한 규칙으로 트리 노드들을 구성한다. 트리를 구성하는 모든 노드의 ..