
정수를 저장하는 객체를 만들기 위한 클래스 설계
문서 내 토픽
-
1. C++ 클래스 문법C++ 클래스는 class 키워드를 사용하여 선언되며, 멤버 변수(속성)와 멤버 함수(메서드)로 구성됩니다. 클래스의 멤버 함수는 클래스 내부 또는 외부에서 정의될 수 있으며, 이 경우 범위 지정 연산자 ::를 사용합니다. 클래스에는 private, protected, public의 세 가지 가시성 지시어가 있습니다. 생성자와 소멸자는 객체의 생성과 소멸 시 자동으로 호출되는 특수한 멤버 함수입니다.
-
2. 정수 저장 클래스 설계정수를 저장하는 IntegerStorage 클래스를 설계하였습니다. 이 클래스는 동적 할당된 정수 배열을 사용하여 정수를 저장하며, 생성자, 소멸자, add(), remove계열 함수, getAverage(), changeCapacity() 등의 멤버 함수를 제공합니다. 또한 resize(), shrinkIfNeeded() 등의 내부 함수를 통해 저장 공간을 동적으로 관리합니다.
-
3. 소스 프로그램main.cpp, IntegerStorage.cpp, IntegerStorage.h 파일로 구성된 소스 프로그램을 작성하였습니다. main.cpp에서는 IntegerStorage 클래스의 객체를 생성하고 다양한 멤버 함수를 호출하여 기능을 테스트합니다. IntegerStorage.cpp와 IntegerStorage.h에서는 클래스의 멤버 함수와 데이터 멤버를 정의하고 구현합니다.
-
4. 프로그램 실행 화면작성한 프로그램을 실행한 결과를 보여줍니다. 정수 추가, 최대/최소값 제거, 가장 오래된/최근 값 제거, 용량 변경 등의 기능이 정상적으로 동작하는 것을 확인할 수 있습니다.
-
5. 참고문헌C++ 프로그래밍 관련 교재와 서적을 참고하였습니다. 전중남, 이병래의 'C++프로그래밍', 비야네 스트롭스트룹의 'The C++ Programming Language 4판', 윤성우의 '윤성우의 열혈 C++ 프로그래밍 개정판 2판' 등이 활용되었습니다.
-
1. C++ 클래스 문법C++ 클래스 문법은 객체 지향 프로그래밍의 핵심 개념을 구현하는 데 필수적입니다. 클래스를 통해 데이터와 메서드를 캡슐화하여 코드의 재사용성과 유지보수성을 높일 수 있습니다. 클래스 정의, 생성자와 소멸자, 멤버 변수와 메서드, 접근 제어자 등 C++ 클래스 문법을 이해하면 객체 지향 프로그래밍을 효과적으로 구현할 수 있습니다. 또한 상속, 다형성, 연산자 오버로딩 등의 고급 기능을 활용하여 더욱 복잡한 프로그램을 개발할 수 있습니다.
-
2. 정수 저장 클래스 설계정수 저장 클래스를 설계할 때는 데이터 멤버로 정수 값을 저장할 수 있는 변수를 선언하고, 이를 효과적으로 관리할 수 있는 메서드를 구현해야 합니다. 예를 들어 정수 값을 설정하고 가져오는 메서드, 정수 값을 증가/감소시키는 메서드, 정수 값을 문자열로 변환하는 메서드 등을 제공할 수 있습니다. 또한 생성자와 소멸자를 통해 객체의 생성과 소멸을 관리할 수 있습니다. 이러한 클래스 설계를 통해 정수 값을 안전하고 효율적으로 다룰 수 있습니다.
-
3. 소스 프로그램소스 프로그램은 C++ 클래스 문법과 정수 저장 클래스 설계를 실제로 구현한 코드입니다. 소스 프로그램에는 클래스 정의, 생성자와 소멸자 구현, 멤버 함수 구현, 객체 생성 및 사용 등이 포함됩니다. 이를 통해 실제로 정수 값을 저장하고 관리하는 기능을 구현할 수 있습니다. 소스 프로그램은 C++ 프로그래밍 실습에 매우 중요한 부분이며, 클래스 기반 프로그래밍의 이해도를 높이는 데 도움이 됩니다.
-
4. 프로그램 실행 화면프로그램 실행 화면은 소스 프로그램이 실제로 동작하는 모습을 보여줍니다. 이를 통해 정수 저장 클래스가 제대로 구현되었는지, 사용자 입력과 출력이 올바르게 이루어지는지 확인할 수 있습니다. 프로그램 실행 화면은 개발 과정에서 디버깅과 테스트에 활용되며, 최종적으로 사용자에게 프로그램의 기능을 보여주는 데 사용됩니다. 따라서 프로그램 실행 화면은 프로그램 개발의 중요한 부분이라고 할 수 있습니다.
-
5. 참고문헌참고문헌은 프로그램 개발에 도움이 된 외부 자료들을 정리한 것입니다. C++ 클래스 문법, 객체 지향 프로그래밍, 정수 저장 클래스 설계 등과 관련된 서적, 온라인 자료, 기술 문서 등이 포함될 수 있습니다. 참고문헌을 통해 프로그래밍 지식을 보완하고 문제 해결 방법을 찾을 수 있습니다. 또한 참고문헌은 프로그램 개발 과정을 기록하고 다른 개발자와 공유하는 데 도움이 됩니다.
C++프로그래밍 2024년 2학기 방송통신대 출석수업대체과제물)정수를 저장하는 객체를 만들기 위한 클래스를 설계하려고 한다. 이 클래스의 객체는 다음과 같이 동작한다.생성성자, 소멸자, 1~5에 나열한 기능을 담당하는 멤버함수 데이터멤버 등
본 내용은 원문 자료의 일부 인용된 것입니다.
2024.10.07
-
객체지향프로그래밍(JAVA) 가위바위보 게임(서버 소켓) 16페이지
객체지향프로그래밍 TermProject-컴퓨터 서버 연결 후 동작 (가위바위보)경영학과목차1. 프로그램 개요 및 설계- 프로그램 개요- 프로그램 설계2. 프로그램 구현 및 코드- 서버- 클라이언트3. 프로그램 동작- 실행 화면1. 프로그래밍 개요 및 설계객체지향프로그래밍 수업의 과제로 자유주제로 프로그램을 구현하게 되었다. 어떤 것을 프로그램으로 구현해보면 좋을까 고민하다가, 평소 관심 가던 분야와 관련된 것을 만들어보기로 하였다.부경대학교 중앙동아리 중 시사경제 및 증권투자 동아리를 2년째 활동하고 있으며, 현재는 16년도 회장을...2020.11.07· 16페이지 -
고려대,성균관대,서강대,건국대 컴퓨터공학과 편입면접 대비 자료 13페이지
1. 연결 리스트?메모리의 동적 할당으로 구현된 리스트를 말한다. 배열과 비교했을 때 크기 조절이 자유롭고 요소를 추가하거나 삭제할 때 발생하는 오버헤드가 없다. 하지만 노드 내 변수들로 인해 배열보다 크기가 크고, 메모리 상에서 물리적으로 인접해있지 않아 속도가 느리고 캐싱에도 유리하지 않다. 또한 한번의 연산으로 임의의 항목으로 접근할 수 있는 배열과는 달리 순차적으로 접근해야 하므로 O(n)으로써 속도가 느리다.2. 스택?LIFO 속성을 만족하는 자료 구조이다. 배열과 비교했을 때 임의의 항목으로 접근이 불가능하지만 요소의 삽...2020.01.31· 13페이지 -
함수형 프로그래밍(Clean, F#, Lazy K, Miranda, ML, OCaml, Scala, Scheme, Unlambda) 19페이지
제목: 함수형 프로그래밍(Clean, F#, Lazy K, Miranda, ML, OCaml, Scala, Scheme, Unlambda)서론함수형 언어(함수 언어, 영어 : functional language )는 함수형 프로그래밍을 기본 스타일로 추천하는 기능을 가진 프로그래밍 언어로 함수형 프로그래밍 언어의 약어이다.함수형 프로그래밍에서는 프로그램의 구성에 함수를 많이 사용하기 때문에 대부분의 함수형 언어에서는 함수를 일급 객체로 취급하고, 이론적인 계산 모델로도 일급 객체로 함수를 취급하며 계산 및 재 작성 때 사용하고 있다...2017.04.12· 19페이지 -
프로그래밍 언어의 장단점과 역사 11페이지
~19501945 - 폰 노이만 방식*프로그램 내장 방식 : 메모리에 프로그램을 저장하고 프로그램 명령어들을 차례대로 실행 하는 것(프로그램만 교체에서 메모리에 올리면 동작하므로 하드웨 어를 교체해야하는 문제 해결)*조건 제어 전이 : 라이브러리 개념의 시초로 정해진 순서대로만 수행하도록 만들어진프로그램이 아닌 어떠한 순서로도 이동하여 실행될 수 있는 코드의소모임인 서브루틴의 개념Strengths단일비트 제공, 정수타입과 부동소수점 수치 타입을 지원, 배열과 레코드를 포함, 레코드는 중첩된 레코드 포함가능Weakness선택문을 포함...2014.08.22· 11페이지 -
자바 기초 ppt 발표자료 24페이지
자바 5.0 프로그래밍 ( 차근차근 배우는 자바 AtoZ ) Ch01 – Ch04 컴퓨터 정보통신 공학 전공 20062366 권도 균Chapter01 자바란 무엇인가 Chapter02 자바 기본 문법 Chapter03 주석문과 제어문 Chapter04 클래스와 배열Chapter01 자바란 무엇인가 자바소개 자바 API 활용1. 자바소개 - 특징 플랫폼 독립성 Windows 프로그램 - 리눅스환경에서 실행 : 실행불가 “ 한번 작성하면 어느 곳에서든 사용한다 ” - 자바의 구현정신 = JVM( 자바 가상 머신 ) 이 플랫폼 독립성을 ...2012.03.24· 24페이지