필자는 멤버와 비 멤버 함수의 차이에 대한 설명을 검색했는데, 여전히 혼란 스럽지만 나에게 약간의 일을 명확히하는 예를 보여 주겠다. 다음은 강사가 학습 자료로 준 오래된 테스트의 질문입니다.비회원, 비공개, 공개 등의 기능을 멤버로 선택하기.
텍스트의 queue2.h 및 node2.h 템플릿 구현을 사용하는 main() 프로그램이 있고 문자 대기열 (queue 편지). (문자 < < 일을)
- 우리는 큐에 문자열 (것)의 모든 문자를 삽입 할 스트림 연산자를 쓰고 싶어요.
(b) 우리는 이것을<의 회원 또는 비회원으로해야합니까? 비공개, 공개, 친구 또는 둘 중 누구입니까?
- 링크 된 목록 도구 키트를 사용하여 향후 조작을 위해이 문자 대기열의 헤드 포인터를 반환하는 도구 (Get_Front라고 함)를 제공하고자합니다.
그래서 list_head_insert (head_ptr, '2')는 모든 것이 제대로 코딩되면 큐의 맨 앞에 '2'를 배치합니다.
(b) Get_Front를 회원 또는 비회원으로 설정해야합니까? 비공개, 공개, 친구 또는 둘 중 누구입니까?
친구 기능으로 비회원으로 구현해야하는 첫 번째 프로그램을 추측 하겠지만 구체적인 이유는 확실하지 않습니다.
고맙습니다.
개인 데이터 멤버 멤버 함수에 액세스해야하거나 사물 기능이없는 (또는 멤버 함수가 아니어야 함) 무료 함수에 액세스해야하는 항목을 만듭니다. [이것은 좋은 읽을 거리입니다.] (http://www.gotw.ca/gotw/084.htm) – chris