| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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언어
- 독립기념관
- C++
- 안드로이드 앱 개발
- 캡슐화
- 언제나휴일
- 표준 입출력
- 강의
- 추천
- 언제나 휴일
- 졸업 작품 소재
- 네트워크 프로그래밍
- 실습
- 파이썬
- 동영상
- 동영상 강의
- Windows Forms
- 실습으로 다지는 c#
- c#
- 충남 천안
- 원격 제어 프로그램
- 프로젝트
- 소켓 통신
- 산책하기 좋은 곳
- 클래스 다이어그램
- 유튜브 동영상 강의
- 알고리즘
- Today
- Total
목록전체 글 (372)
프로그래밍 언어 및 기술 [언제나휴일]
[C++] 파생 개체의 생성과 소멸 과정 이번에는 일반화 관계에 있는 파생 클래스 형식의 개체를 생성과 소멸 과정을 알아보기로 할게요. 파생 클래스 형식의 개체를 생성할 때는 기반 클래스를 생성한 후에 파생 클래스를 생성합니다. 실제 생성한 개체에는 기반 클래스에 정의한 멤버도 만들어지는 것이죠. 그리고 소멸할 때는 생성 과정의 역으로 파생 클래스의 소멸자를 수행한 후에 기반 클래스의 소멸자를 수행합니다. 다음은 이를 확인하기 위해 기반 클래스 음악가와 파생 클래스 피아니스트 클래스에 생성자와 소멸자를 추가하여 어떤 순서로 수행하는지 확인하기 위한 출력문을 작성한 예제 코드입니다. //파생 개체의 생성과 소멸 과정 #include #include using namespace std; class Music..
[C++] 상속(일반화 관계) 개요 이제 OOP의 세 가지 주요 특징인 캡슐화, 상속, 다형성 중에 상속에 관해 알아볼게요. 상속은 다른 형식에 정의한 것을 마치 자신에서 정의한 것처럼 만드는 OOP의 특징입니다. 이러한 관계를 UML에서는 일반화 관계라 부르고 삼각형과 실선으로 관계를 표시합니다. 일반화 관계는 “피아니스트는 음악가이다.”처럼 “이다.(is a)”로 나타낼 수 있는 관계입니다. 이 때 음악가처럼 일반적인 클래스를 기반 클래스라 말하며 피아니스트처럼 특수한 클래스를 파생 클래스라 부릅니다. C++에서 일반화 관계를 표현할 때 파생 문법을 이용합니다. 파생 문법은 파생 클래스를 정의할 때 기반 클래스를 다음처럼 나타냅니다. class Pianist : public Musician { }; ..
[C++] 캡슐화 최종 실습 – 구체적 구현 이제 마지막으로 메서드를 구체적으로 구현합시다. 약속한 기능을 구현하면서 필요하면 별도의 메서드를 추가하세요. 여기에서 추가하는 메서드는 다른 형식에서 호출해서 사용하지 않는 메서드이므로 접근 지정을 private으로 지정하세요. 특히 멤버 필드의 값이 특정 범위 내에 있어서 필터링을 요구하면 설정자 메서드를 추가하여 구현하세요. 설정자 메서드에서 멤버 필드 값을 범위 내에서 조절하는 기능을 작성하면 버그를 만들 확률을 줄일 수 있습니다. 여러분께서 각자 구현해 본 후에 비교해 보세요. 여기에서는 지력, 체력, 스트레스, 연속으로 공부한 횟수는 범위가 정해져 있습니다. 이에 이들 멤버 필드 값을 설정하는 설정자를 추가합시다. 물론 이들 메서드는 형식 외부에서 ..
[C++] 캡슐화 최종 실습 – 멤버 필드 23. 캡슐화 최종 실습 – 멤버 필 먼저 클래스 이름은 Student로 정할게요. 주민 번호는 변하지 않으므로 상수화 멤버 필드로 정의하세요. const int pn;//주민번호 주민 번호를 순차적으로 부여하기 위해 정적 멤버 필드로 가장 최근에 부여한 주민 번호가 필요하겠죠. static int last_pn;//가장 최근에 부여한 주민 번호 이름은 문자열로 정하면 되겠죠. string name;//이름 지력과 체력, 스트레스, 연속으로 공부한 횟수는 정수 형식으로 정의하면 되겠네요. int iq;//지력 int hp;//체력 int stress;//스트레스 int scnt;//연속으로 공부한 횟수 최소값, 최대값, 디폴트 값은 형식 내에 정해진 값이므로 정..
[C++] 캡슐화 최종 실습 – 시나리오 이번에는 단계별로 캡슐화를 실습해 보기로 해요. 여러분께서는 각 단계별로 먼저 직접 해 본 후에 비교하시기 바랍니다. 여기에서는 다음의 시나리오를 캡슐화 실습할 거예요. 다음 내용처럼 학생 데이터를 정의하시오. 1. 멤버 필드 주민번호: 순차적 부여 이름: 생성 시 전달 지력:100(최소 0, 최대 200) 체력: 100 (최소 0, 최대 200) 스트레스: 0 (최소 0, 최대 100) 연속으로 공부한 횟수: 0 (0,5), 공부를 하면 1 증가, 그 외의 행위를 하면 0으로 리셋, scnt로 부름 2. 접근 가능한 멤버 메서드(접근 지정이 public) 공부하다(체력 5소모, 지력: scnt 만큼 증가, 스트레스: 2감소) 강의를 받다.(체력 3소모, 지력: ..
