목차
제1장 콘솔(console) 프로그램
1.1 프로젝트 생성 = 16
1.2 주석(Comment) = 19
1.3 변수(Variable) = 19
1.4 함수(Function) = 20
1.4.1 함수 원형 선언 = 20
1.4.2 매개 변수 전달(Parameters Passing) = 20
1.4.3 함수 중복(Function Overloading) = 22
1.4.4 디폴트 매개변수(Defauot Parameters) = 24
1.4.5 Inline함수 = 25
1.5 동적 메모리 할당 및 회수 = 25
1.6 조건부 컴파일(conditional-compilation) = 27
1.6.1 #define, #undef = 28
1.6.2 조건부 컴파일 지시문(directives) = 29
제2장 객체를 정의하는 클래스
2.1 추상화(Abstraction) = 32
2.1.1 데이터 추상화 = 32
2.1.2 제어 추상화 = 32
2.2 절차적 프로그래밍과 객체지향 프로그래밍 = 33
2.2.1 절차적 프로그래밍(Procedural Programming) = 33
2.2.2 객체지향 프로그래밍(Object Oriented Programming : OOP) = 33
2.3 C++의 클래스 = 34
2.3.1 클래스 개요 = 34
2.3.2 클래스 멤버 = 37
2.3.3 배열 및 포인터 객체 = 42
2.4 클래스 전환(Conversion) = 43
2.4.1 전환 생성자(Conversion Constructors) = 44
2.4.2 멤버 전환 함수(Conversion Functions) = 45
2.5 클래스 상속(Class Inheritance) = 46
2.5.1 파생 클래스 정의 = 46
2.5.2 기반 클래스 초기화(Base Class Initialization) = 47
2.5.3 다중 상속/계승(Multiple Inheritance) = 49
2.5.4 가상 기반 클래스(Virtual Base Class) = 51
2.6 연산자 함수(Operator Function) = 54
2.6.1 치환(Assignment) 연산자 = 59
2.7 프랜드 함수와 프랜드 클래스 = 59
2.7.1 프랜드 함수(Friend Function) = 59
2.7.2 프랜드 클래스(Friend Class) = 61
2.8 가상 함수(Virtual Function) = 61
2.9 템플릿(Template) = 64
2.9.1 함수 템플릿(Function Template) = 64
2.9.2 클래스 템플릿(Class Template) = 66
제3장 MFC(Microsft Foundation Class)
3.1 응용 프로그램 구조 클래스 = 72
3.1.1 메시지 처리 클래스 = 72
3.1.2 응용 프로그램 클래스 = 73
3.1.3 문서, 뷰, 프레임 클래스 = 74
3.1.4 윈도우, 다이얼로그, 컨트롤 클래스 = 76
3.1.5 파일, 데이터베이스 관련 클래스 = 77
3.1.6 그리기 관련 클래스 = 78
3.1.7 단순 데이터 타입 클래스 = 79
3.2 컬렉션(Collection) 클래스 = 80
3.2.1 템플릿 기반이 아닌 컬렉션 클래스 = 80
3.2.2 템플릿 기반 컬렉션 클래스 = 94
3.3 MFC 매크로 = 98
3.3.1 메시지 맵(Message Map) 메크로 = 98
3.3.2 실행시간 클래스 정보 메크로 = 100
제4장 윈도우 프로그래밍 시작하기
4.1 개발 환경(DevStudio) = 106
4.2 최소 MFC 윈도우 응용 프로그램 = 108
4.3 AppWizard를 사용한 윈도우 프로그램 작성 = 115
4.3.1 AppWizard 6 단계 = 115
4.4 SDI 응용 프로그램 구조(Application Frameworks) = 118
4.4.1 AppWizard가 로부터 파생시킨 클래스 = 118
4.4.2 CWinApp 파생 클래스 = 118
4.4.3 CFrameWnd 파생 클래스 = 124
4.4.4 CView 파생 클래스 = 127
4.4.5 CDocument 파생 클래스 = 129
4.4.6 AFX(Application Framrworks) 클래스들의 상호 참조 = 132
4.4.7 메시지 종류 및 메시지 보내기 함수 = 134
제5장 마우스, 키보드 메시지 처리
5.1 마우스 이벤트 = 138
5.2 키보드 이벤트 = 143
제6장 메뉴, 툴바, 상태바, 윈도우 변경
6.1 메뉴(Munu) = 148
6.2 툴바(ToolBar) = 157
6.2.1 툴바 생성 CToolBar::Create, CreateEx, LoadToolBar = 157
6.2.2 도킹 툴바 설정 = 159
6.2.3 툴바에 텍스트 표시 = 159
6.3 상태바(Statusbar) = 162
6.3.1 CStatusBar::Create, SetIndicators = 163
6.3.2 Pane 정보 = 164
6.4 윈도우 스타일 변경 = 167
제7장 GDI(Graphic Device Interface)
7.1 장치 컨텍스트(Device Context : DC) = 174
7.2 CDC 클래스를 이용한 2차원 그래픽 = 175
7.2.1 DC얻기, 저장, 복구, 삭제하기 = 176
7.3 그래픽 객체 클래스(CPenC, CBrush) = 189
7.3.1 CPen클래스 = 190
7.3.2 CBrush클래스 = 192
7.3.3 래스터 연산에 의한 그리기 모드(Drawing Mode) 설정 = 194
7.4 텍스트 출력 = 198
7.4.1 텍스트 색 지정 = 198
7.4.2 CFont클래스 = 201
제8장 분할 윈도우, 다중 뷰 전환
8.1 분할 윈도우 = 206
8.2 View 전환 = 218
제9장 Serialize 및 파일 I/O
9.1 Serialize = 234
9.2 CFile에 의한 파일 I/O = 236
제10장 다이얼로그와 컨트롤
10.1 메시지 박스 = 238
10.2 공용 다이얼로그(Common Dialog) = 239
10.2.1 CFileDialog클래스 = 239
10.2.2 CFontDialog클래스 = 240
10.2.3 CColrDialog클래스 = 241
10.3 사용자 정의 다이얼로그 = 245
10.3.1 다이얼로그 리소스 생성 = 246
10.3.2 다이얼로그 리소스에 대한 클래스 생성 = 246
10.4 다이얼로그에 컨트롤 추가 = 250
10.5 다이얼로그 기반 응용 프로그램 = 259
10.5.1 AppWizard가 생성한 Dialog 기반응용 프로그램 = 260
10.6 Modeless 다이얼로그 = 265
10.7 공용 컨트롤 = 272
10.7.1 리스트 컨트롤 = 272
제11장 비트맵(Bitmap) 처리
11.1 리소스 템플릿을 이용한 Bitmap 화면 출력 = 288
11.1.1 리소스 템플릿에 Bitmap 추가 = 288
11.1.2 DBitmap 클래스 = 289
11.2 BMP 파일 화면 출력 = 293
11.2.1 BMP 파일 형식 = 293
11.2.2 CPalette클래스, LOGPALETTE구조체 = 297
11.2.3 윈도우 화면에 출력 = 299
11.3 타이머에 의한 비트맵 애니메이트 = 306
11.3.1 타이머 이벤트 처리 = 306
제12장 클래스 생성
12.1 클래스 종류 및 생성 = 314
제13장 정적/동적 라이브러리 생성
13.1 정적 라이브러리(Static Library ; LIB) = 338
13.2 동적 라이브러리(Dynamic Link Library ; DLL) = 340
13.2.1 MFC Extemsion DLL = 342
13.2.3 Regular DLL = 343
제14장 데이터베이스 프로그래밍
14.1 관계형 데이터베이스 용어 = 352
14.2 ODBC(Open Database Connectivity) = 354
14.3 DAO(Data Access Object) = 365
14.4 ODBC CRecordset 연산 = 368
14.4.1 레코드 추가(Add), 삭제(Delete), 편집(Edit) = 368
14.4.2 검색 및 정렬 = 375
14.5 다중 TABLE VIEW 전환 = 379
14.6 다중 TABLE JOIN = 399
14.6.1 Cartesian Product JOIN = 399
14.6.2 LEFT JOIN = 416
제15장 TCP/IP SOCKET 프로그래밍
15.1 네트워크 용어 = 418
15.2 CAsyncSocket/CSockrt 클래스 = 420
15.2.1 CAsyncSocket 클래스 = 420
15.2.2 소켓 이벤트 통지 함수(Notification Functions) = 423
15.2.3 CSocket 클래스 = 424
15.3 서버에 다수의 클라이언트를 접속 = 473
15.4 네트워크 오목 프로그램 = 483
15.4.1 오목 서버 프로그램 = 484
15.4.2 오목 클라이언트 프로그램 = 503
찾아보기 = 535
저자소개 = 540