일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 언제나휴일
- 알고리즘
- C++
- 안드로이드 앱 개발
- 클래스 다이어그램
- 유튜브 동영상 강의
- 언제나 휴일
- 표준 입출력
- 졸업 작품 소재
- Windows Forms
- 소스 코드
- c#
- 졸업 작품
- 소켓 통신
- 네트워크 프로그래밍
- 동영상
- 파이썬
- 산책하기 좋은 곳
- 동영상 강의
- 강의
- 실습으로 다지는 c#
- 무료 동영상 강의
- 프로젝트
- 충남 천안
- 표준 라이브러리 함수
- c언어
- 실습
- 원격 제어 프로그램
- 캡슐화
- 추천
- Today
- Total
프로그래밍 언어 및 기술 [언제나휴일]
[C++] 22. 캡슐화 최종 실습 – 시나리오 본문
이번에는 단계별로 캡슐화를 실습해 보기로 해요. 여러분께서는 각 단계별로 먼저 직접 해 본 후에 비교하시기 바랍니다. 여기에서는 다음의 시나리오를 캡슐화 실습할 거예요.
다음 내용처럼 학생 데이터를 정의하시오.
1. 멤버 필드
주민번호: 순차적 부여
이름: 생성 시 전달
지력:100(최소 0, 최대 200)
체력: 100 (최소 0, 최대 200)
스트레스: 0 (최소 0, 최대 100)
연속으로 공부한 횟수: 0 (0,5), 공부를 하면 1 증가, 그 외의 행위를 하면 0으로 리셋, scnt로 부름
2. 접근 가능한 멤버 메서드(접근 지정이 public)
공부하다(체력 5소모, 지력: scnt 만큼 증가, 스트레스: 2감소)
강의를 받다.(체력 3소모, 지력: scnt 만큼 증가, 스트레스: scnt 만큼 증가)
잠자다.(체력 10회복, 스트레스: 5감소)
휴식하다.(체력 3회복, 스트레스: 25감소)
음료를 마시다.(체력 5회복, 지력: 10감소 , 스트레스: 2증가)
노래하다.(체력 10 소모, 지력: 5-scnt감소, 스트레스: 5-scnt증가)
이름 가져오기, 주민번호 가져오기,지력 가져오기, 체력 가져오기, 스트레스 가져오기
* 가져오기에서는 scnt를 변화시키지 않습니다.
실습은 다음과 같은 단계로 진행할 거예요.
a. 멤버 필드 결정하기
시나리오를 보고 학생 클래스에 필요한 멤버 필드의 형식과 유형(비정적 멤버, 정적 멤버, 상수화 멤버 필드 등)을 결정하세요.
b. 멤버 메서드 결정하기
시나리오를 보고 멤버 메서드 이름과 입력 인자 리스트, 반환 형식을 정의하세요.
c. 테스트 코드 작성하기
학생 클래스를 제대로 작성한 것인지 확인하는 테스트 코드를 작성하세요.
d. 멤버 메서드 구현하기
실제로 학생 클래스의 멤버 메서드를 구체적으로 구현하세요.
'C & C++ > 디딤돌 C++' 카테고리의 다른 글
[C++] 28. 파생 개체의 생성과 소멸 과정 (0) | 2024.04.07 |
---|---|
[C++] 27. 상속(일반화 관계) 개요 (0) | 2024.04.07 |
[C++] 26. 캡슐화 최종 실습 – 구체적 구현 (1) | 2024.04.07 |
[C++] 23. 캡슐화 최종 실습 – 멤버 필드 24. 멤버 메서드 25. 테스트 코드 작성 (1) | 2024.04.07 |
[C++] 21. 캡슐화 실습2 – 학생 (1) | 2024.04.07 |
[C++] 20. 캡슐화 실습1 – 복소수 (0) | 2024.04.06 |
[C++] 19. 특별한 멤버 this (0) | 2024.04.06 |
[C++] 18. 상수화 멤버 (0) | 2024.04.06 |