이미 소장하고 있다면 판매해 보세요.
|
1일째 C++의 시작
간단한 C++의 역사 C++은 어떻게 진화되어 왔는가? C를 먼저 배워야 하는가? C++과 자바와 C# ANSI 표준 프로그램 준비 개발자의 개발 환경(Development Environment) 원시 코드 컴파일하기 개발 주기(Development Cycle) 첫 번째 C++ 프로그램 작성(HELLO.cpp) 자신이 이용하는 컴파일러로 시작하는 경우 Hello World 프로젝트 구축 컴파일 오류들 2일째 C++ 프로그램의 각 부분들 간단한 프로그램의 각 부분들 간단히 살펴보는 cout 표준 이름 영역(Standard Namespace) 사용하기 주석문(Comments) 함수 3일째 변수와 상수 변수란 무엇인가? 변수 정의하기 동시에 같은 형 변수를 하나 이상 만들 때 변수에 값 대입하는 법 typedef 언제 short를 쓰고 언제 long을 쓰는가? 문자(Character) 상수(Constant) 나열형 상수(enumerated constant) 4일째 수식과 문장 문장(Statement) 수식문(Expression) 연산자(Operator) 대입 연산자(Assignment Operator)와 수학 연산자(Mathematical Operator)의 혼용 증가 연산자와 감소 연산자 연산자 우선 순위(Precedence) 중첩된 괄호 참(true)값의 속성 if 문장 5일째 함수 함수란 무엇인가? 반환값, 매개변수, 인자 함수 선언(Declaring)과 함수 정의(Definition) 함수 실행(Execution of Function) 지역 변수(Local Variable) 전역 변수(Global Variable) 전역 변수에 대한 주의 사항 지역 변수에 대한 추가 사항 함수문(Function Statement) 함수 인자(Function Argument)에 대한 부가 설명 6일째 객체지향 프로그래밍(Object-Oriented Programming) C++은 객체지향인가? 새로운 형 만들기 클래스와 멤버 클래스 멤버에 접근하기 전용(private)과 범용(public) 클래스 메소드 구현 생성자와 소멸자 const 멤버 함수 인터페이스와 구현 클래스 선언과 메소드 정의를 어디에서 할 것인가? inline 구현 다른 클래스를 멤버 자료로 갖는 클래스 구조체(Structures) 7일째 프로그래밍의 흐름 순환문(Looping) while 순환문 do...while 순환문 do...while for 순환문 순환문 요약 switch 문 8일째 포인터 포인터란 무엇인가? 포인터를 사용하는 이유? 스택과 자유 기억 공간(Free Store : 힙(Heap)) 메모리 누출(Memory Leak) 자유 기억 장소에 객체 만들기 객체 지우기 자료 멤버(Data Member)에 접근 자유 기억 공간의 멤버 자료에 대해 this라는 포인터 실종된 포인터 const 포인터 const 포인터와 const 멤버 함수 const this 포인터 포인터 연산 9일째 참조자 참조자(reference)란 무엇인가? 참조자에 주소 연산자 '&' 사용하기 무엇이 참조될 수 있는가? 널 포인터와 널 참조자 함수 인자(Argument)를 참조자로 전달하기 함수 헤더와 함수 원형(Prototype)에 대한 이해 여러 개의 값을 반환하는 법 효율성(Efficiency)을 위해 참조자를 전달하자 참조자와 포인터를 사용하는 때 참조자와 포인터를 섞어서 쓸 때 범위에 벗어난 객체에 대한 참조자를 반환하면 안된다 힙에 있는 객체에 대한 참조자 반환하기 포인터, 도대체 누가 포인터를 갖고 있는가? 10일째 고급 함수들 중첩된(Overload) 멤버 함수 기본값(Default Value) 사용하기 기본값과 중첩 함수 중 어떤 것을 선택할 것인가? 기본 생성자(Default Constructor) 생성자 중첩 객체 초기화 복사 생성자(Copy Constructor) 연산자 중첩 변환 연산자 11일째 객체지향 분석과 설계 모델 구축 소프트웨어 설계 : 모델링 언어 소프트웨어 설계 : 프로세스 극단적인 프로그래밍 비전 요구 사항 분석 설계(Design) 12일째 상속 상속이란 무엇인가? 전용(private)과 보호(protected) 생성자와 소멸자 함수 재생(Overriding Function) 가상 메소드(Virtual Method) 13일째 배열과 연결 리스트 배열이란 무엇인가? 배열 원소(Array Element) 배열의 끝을 지나 값을 저장할 경우 울타리를 지난 오류 배열의 초기화 변수 선언 객체의 배열 다차원 배열(Multidimensional Array) 다차원 배열 초기화 메모리에 관하여 포인터 배열 14일째 다형성 단항 상속성(Single Inheritance)의 문제점 다중 상속(Multiple Inheritance) 추상 자료형(Abstract Data Type) 15일째 특수 클래스와 함수들 정적 멤버 자료 정적 멤버 함수 함수 포인터 멤버 함수에 대한 포인터 16일째 고급 상속 기능 포함(Containment) 상속/포함, 대리(Delegation 전용 상속(Private Inheritance) 프랜드 클래스(Friend Class) 프랜드 함수(Friend Function) 프랜드 함수와 연산자 중첩(Operator Overloading) 삽입 연산자(Insertion Operator) 중첩 17일째 스트림 스트림(Stream)에 대한 개괄 스트림과 버퍼 표준 입·출력 객체(Standard I/O Object) 재지정(Redirection) cin을 사용한 입력 cin의 또 다른 멤버 함수 cout으로 출력 관련된 함수들 조종자(Manipulatior), 플래그(Flag), 규격 명령어(Formatting Instruction) 스트림과 printf() 함수 파일의 입력과 출력 이진 파일과 텍스트 파일 명령어 줄 프로세싱(Command-Line Processing) 18일째 이름 영역 시작 이름에 의해 해석되는 함수와 클래스 이름 영역 만들기 이름 영역 사용법 using 예약어 이름 영역의 별칭 무명의 이름 영역 표준 이름 영역 std 19일째 템플릿 템플릿(Template)이란 무엇인가? 매개변수화된 형 템플릿 정의 템플릿 함수 템플릿과 프랜드 템플릿 항목 사용하기 표준 템플릿 라이브러리 컨테이너 순차 컨테이너 이해하기 스택 Queue에 대한 이해 연상 컨테이너에 대한 이해 클래스 알고리즘 20일째 예외사항과 오류 처리 버그, 오류, 실수, 프로그램에 녹이 슬 때(Code Rot) 예외사항(Exception) try 블록과 catch 블록의 사용 예외사항 안의 자료와 예외사항 객체의 작명법 예외사항과 템플릿 오류가 없는 예외사항 '녹슨 프로그램(Code Rot)'이라는 말에 대해 버그와 디버깅 21일째 이제 무엇을 해야 하나 전처리계와 컴파일러 중간 형태의 보기 #define 지시자 사용하기 포함(Inclusion) 및 포함 감시자(Inclusion Guard) 매크로 함수(Macro Function) 인라인 함수(Inline Function) 문자열 연산(String Manipulation) 내장 매크로(Predefined Macro) assert() 비트 연산(Bit Twiddling) 문체(Style) 다음 단계 부록 A 이진법과 16진법 부록 B C++ 예약어 부록 C 연산자 우선 순위 부록 D 연습문제 및 해답 |