Program Language/c++35 C++ 기초(직원 관리 시스템 - Database 클래스) 직원 관리 시스템에서 직원의 정보는 별도의 database에 저장하여 관리하면 편리합니다. 이번 포스팅에서는 database 클래스를 정의하고 구현하는 방법에 대해서 정리했습니다. Database 클래스 정의 설계하려는 Database 클래스는 Employee 객체를 저장합니다. 이를 위해 std::vector 클래스를 자료형으로 사용하는 멤버변수를 선언했으며. database에 직원 정보를 저장하고 조회하기 위한 메서드들을 정의했습니다. 이에 대한 예제는 아래와 같습니다. #pragma once #include #include #include "Employee.h" using namespace std; namespace Records { const int kFirstEmployeeNumber = 1; .. 2023. 2. 9. C++ 기초(직원 관리 시스템 - 단위 테스트) 클래스 단위로 프로그램을 작성할 때 각각의 클래스마다 테스트 코드도 함께 작성하면 좋습니다. 이번 포스팅에서는 Employee 클래스에 대한 간단한 테스트 코드를 작성하는 방법과 좀 더 체계적으로 테스트하는 방법인 단위테스트에 대해서 정리했습니다. ※Employee 클래스에 대한 정의 및 구현은 아래 포스팅을 참고하세요 2023.01.31 - [프로그래밍/c++] - c++ 기초(직원 관리 시스템 - Employee 클래스 정의) c++ 기초(직원 관리 시스템 - Employee 클래스 정의) 지금까지 정리한 내용을 바탕으로 만들어 보는 첫 프로그램입니다. 학습 시 참고하고 있는 책에 나오는 예제로 간단한 직원 관리 프로그램입니다. 직원 관리 시스템 회사 직원 정보를 관리하는 todamfather.tis.. 2023. 2. 7. C++ 기초(직원 관리 시스템 - Employee 클래스 구현) 이번 포스팅에서는 Employee 클래스의 정의에 이어 구현 부분을 정리했습니다.(정의 부분은 아래 링크를 참고하세요) [참고 : Employee 정의] 2023.01.31 - [프로그래밍/c++] - c++ 기초(직원 관리 시스템 - Employee 클래스 정의) c++ 기초(직원 관리 시스템 - Employee 클래스 정의) 지금까지 정리한 내용을 바탕으로 만들어 보는 첫 프로그램입니다. 학습 시 참고하고 있는 책에 나오는 예제로 간단한 직원 관리 프로그램입니다. 직원 관리 시스템 회사 직원 정보를 관리하는 todamfather.tistory.com Employee 클래스 구현 맨 처음 생성자 부분부터 살펴보겠습니다. 초기화 부분은 생성자 이니셜라이저를 사용하였습니다. (생성자 이니셜라이저 부분은 [.. 2023. 2. 2. c++ 기초(직원 관리 시스템 - Employee 클래스 정의) 지금까지 정리한 내용을 바탕으로 만들어 보는 첫 프로그램입니다. 학습 시 참고하고 있는 책에 나오는 예제로 간단한 직원 관리 프로그램입니다. 직원 관리 시스템 회사 직원 정보를 관리하는 프로그램은 구조가 유연하고 기능이 편리해야 하기에 객체지향 설계를 따릅니다. 프로그램에서 제공하는 기능은 다음과 같습니다. 직원 채용 직원 해고 직원 승진 직원 조회(과거, 현재) 이 프로그램은 크게 네 부분으로 이루어져 있습니다. Employee 클래스 Database 클래스 Interface 클래스 Client code 이 프로그램에서 클래스 정의는 전부 헤더(.h)파일에 정의하고 구현 코드는 (.cpp)에 작성했습니다. 그리고 혹시 모를 이름의 중복을 피하기 위해 "Record"라는 네임스페이스(namespace)를.. 2023. 1. 31. C++ 기초(유니폼 초기화) c++11부터 타입 초기화 방식을 통일시켰습니다. 중괄호 {....}을 사용하여 클래스, 구조체, 기본자료형, 포인터 등 모든 자료형에 대해서 초기화할 수 있습니다. 이번 장은 중괄호를 사용한 유니폼 초기화(uniform initialization)에 대해서 정리했습니다. 구조체와 클래스 초기화 c++11 이전에는 구조체와 클래스 초기화 방식이 서로 달랐습니다. 구조체는 중괄호로 초기화 가능하지만 클래스는 생성자를 이용한 함수형태로만 초기화가 가능했습니다. 다음 예제를 보시면 그 차이점을 알 수 있습니다. #include struct Point_struct { int x, y; }; class Point_class { public: Point_class(int x, int y) :m_x(x), m_y(y.. 2023. 1. 27. c++ 기초(클래스 정의) C++ 이 C구분되는 중요한 특징이 바로 객체지향 언어라는 점입니다. 객체지향 프로그래밍(Object-Oriented Programming)은 C와 같은 절차형 프로그래밍에 비해 코드 작성이 좀 더 독특합니다. 코드 표현에 있어서 세상 모든 것을 객체의 관점에서 바라보는 것입니다. 객체라는 개념은 그리 어려운 것이 아닙니다. 우리 주변에서 흔히 볼 수 있는 TV, 컴퓨터, 사람, 자동차, 의자, 카메라 등 그 모든 것이 객체입니다. 이런 객체를 표현하기 위해 C++에서는 클래스라는 개념을 도입했습니다. 이번 장에서는 객체지향의 가장 기본이라 할 수 있는 클래스(Class)에 대해서 정리해 보겠습니다. 클래스(class) 정의 클래스(class)란 객체의 특성을 정의한 것입니다. 이런 특성을 정의하기 위해.. 2023. 1. 25. 이전 1 2 3 4 5 6 다음