| 000 | 00704namccc200241 k 4500 | |
| 001 | 000000652500 | |
| 005 | 20100806095820 | |
| 007 | ta | |
| 008 | 991202s1999 ulk 000a kor | |
| 020 | ▼a 8980543840 ▼g 93000 : ▼c \20000 | |
| 040 | ▼a 211009 ▼c 211009 ▼d 211009 | |
| 041 | 1 | ▼a kor ▼h eng |
| 049 | 1 | ▼l 111141314 ▼f 개가 ▼l 121048131 ▼f 과학 |
| 082 | 0 4 | ▼a 005.133 ▼2 21 |
| 090 | ▼a 005.133 ▼b 1999a | |
| 100 | 1 | ▼a Liberty, Jesse |
| 245 | 2 0 | ▼a (초보자를 위한)C++ 21일 완성 / ▼d Jesse Liberty 저 ; ▼e 양재찬 역. |
| 246 | 1 9 | ▼a Sams teach yourself C++ in 21 days |
| 260 | ▼a 서울 : ▼b 인포.북 , ▼c 1999. | |
| 300 | ▼a 894 p. ; ▼c 26 cm + ▼e CD-ROM 1매. | |
| 700 | 1 | ▼a 양재찬, ▼e 역 |
| 950 | 0 | ▼b \20000 |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 과학도서관/보존서고1(동양서)/ | 청구기호 005.133 1999a | 등록번호 121048131 (59회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
21일 안에 윈도우 프로그래밍에 익숙해질 수 있게 구성한 지침서. 기본기는 물론, 고급 기술로 자연스럽게 옮겨갈 수 있도록 구성했다.
프로그램을 빠른 시간안에 만들기 위해 필요한 비주얼 C++의 개발 환경과 친해질 수 있도록 했으며 윈도우 표준 컨트롤을 익숙하게 활용할 수 있도록 내용을 담았다. MFC, 클래스와 모듈 ActiveX 컨트롤을 직접 만들 수 있도록 했다. ActiveX 데이터 객체(ADO, OLe DB, ODBC를 사용한 데이터베이스 애플리케이션을 만드는 과정과, 비주얼 C++이 제공하는 인쇄와 미리보기, 예외 처리, 디버깅 환경, MFC 도우미 클래스에 대해서도 자세히 설명했다.
정보제공 :
저자소개
목차
목차
시작하면서 = 21
Week 1 시작하면서
Day 1 C++ 시작
간단한 C++의 역사 = 26
프로그램 = 27
문제해결 방식 = 27
순차적, 구조적, 그리고 객체지향 프로그래밍 = 28
C++과 객체지향 프로그래밍 = 30
C++은 어떻게 진화되어 왔는가? = 32
C를 먼저 배워야 하는가? = 32
C++과 자바 = 33
ANSI 표준 = 33
프로그램 준비 = 34
개발자의 개발 환경(Development Environment) = 35
원시 코드 컴파일하기 = 36
링커를 가지고 실행 가능한 파일 만들기 = 36
개발 주기(Development Cycle) = 37
첫번째 C++ 프로그램 작성(HELLO.cpp) = 38
비주얼 C++ 6으로 시작할 경우 = 40
Hello World 프로젝트 구축 = 40
컴파일 오류들 = 41
요약 = 42
Q&A = 42
워크샵 = 43
퀴즈 = 43
연습문제 = 44
Day 2 C++ 프로그램의 각 부분들
간단한 프로그램의 각 부분들 = 46
간단히 살펴보는 cout = 48
주석문(Commments) = 50
주석문의 형태 = 50
주석문 사용법 = 51
주석에 관한 마지막 주의 사항 = 52
함수 = 52
함수 사용법 = 53
요약 = 55
Q&A = 55
워크샵 = 56
퀴즈 = 56
연습문제 = 56
Day 3 변수와 상수
변수(Variable)란 무엇인가? = 58
메모리 할당하기(Setting Aside Memory) = 58
정수(Integer)의 크기 = 59
Signed와 Unsigned = 60
기본적인 변수형 = 60
변수 정의하기 = 61
대소문자의 구별 = 63
예약어(Keyword) = 63
동시에 같은 형 변수를 하나 이상 만들때 = 64
변수에 값 대입하는 법 = 64
typedef = 66
언제 short를 쓰고 언제 long을 쓰는가? = 67
unsigncd정수형에서의 올림 초기화 = 68
signcd정수형에서의 올림 초기화 = 69
문자(Character) = 69
문자와 숫자 = 70
특수 출력 문자(Printable Character) = 71
상수 (Constan) = 71
문자 상수(literal constant) = 72
기호 상수(symbolic constant) = 72
나열형 상수(enumerated constant) = 74
요약 = 76
Q&A = 77
워크샵 = 78
퀴즈 = 78
연습문제 = 79
Day 4 수식과 문장
문장(Statement) = 82
공백 문장(Whitespace) = 82
블록문과 복합문(Block and Compound Statement) = 82
수식문(Expression) = 83
연산자(Operator) = 84
대입 연산자(assignment operator) = 85
수학 연산자(mathematical operator) = 85
정수 나눗셈과 나머지 연산 = 86
대입 연산자(Assignment Operator)와 수학 연산자(Mathematical Operator)의 혼용 = 88
증가연산자와 감소 연산자(Increment operator and Decrement operator) = 89
전치 연산자와 후치 연산자(Prefix operator and Postfox operator) = 89
연산자 운선 순위(Precedence) = 91
중첩된 괄호(Nesting Parentheses) = 92
참값의 속성 = 93
관계 연산자(Relational Operator) = 93
if 문장 = 95
들여쓰기(Indentation Style) = 98
else = 99
복합 if문 = 100
중첩 if문에서의 중괄호 사용 = 102
논리 연산자(Logical Operator) = 104
논리급(logical AND) = 105
논리합(logical OR) = 105
논리적 부정(logical NOT) = 106
간단한 검사방식 = 106
관계 우선 순위(Relationai Precedence) = 106
참과 거짓에 대한 몇 마디 추가 = 107
조건 연산자(삼항) 연산자(Conditional or Ternary Operator) = 108
요약 = 109
Q&A = 110
워크샵 = 111
퀴즈 = 111
연습문제 = 111
Day 5 함수
함수(Function)란 무엇인가? = 114
반환값, 매개변수, 인자 = 115
함수 선언과 함수 정의 = 115
함수 선언 = 116
함수 원형(Function Prototype) = 116
함수 정의(Execution of Function) = 118
함수 실험(Defining of Function) = 120
지역 변수(Local Variable) = 121
전역 변수(Global Variable) = 123
전역 변수에 대한 주의 사항 = 125
지역 변수에 대한 추가 사항 = 125
함수문(Function Statement) = 127
함수 인자(Function Argument)에 대한 부가 설명 = 128
함수의 매개 변수로 함수를 사용하는 함수 = 128
매개 변수는 지역 변수 = 129
반환값(Return Value)에 대한 부가 설명 = 130
기본 매개 변수(Default Parameter) = 133
함수 중첩(Overloading Function) = 135
함수에 관한 특별한 주제들 = 138
인라인(inline) 함수 = 138
자기 호출(Recursion) = 141
함수는 어떻게 동작되는가? = 146
추상화 단계(Levels of Abstraction) = 146
RAM 나누기 = 147
스택과 함수 = 150
요약 = 151
Q&A = 151
워크샵 = 152
퀴즈 = 153
연습문제 = 153
Day 6 기본적인 클래스
새로운 형(New Type) 만들기 = 156
왜 새로운 형을 만드는가? = 156
클래스와 멤버(Class and Member) = 157
클래스의 선언(Declaring a Class) = 157
이름짓는 법 = 158
객체 정의(Defining an Object) = 159
클래스와 객체 = 159
클래스 멤버에의 접근(Accessing Class Member) = 159
클래스에서 대입하지 말고 객체에 대입해야 한다 = 160
선언하지 않은 것을 클래스가 가질 수는 없다 = 160
전용(private)과 범용(public)에 관해 = 161
멤버 자료룰 전용으로 만들기 = 163
전용성과 보안서에 대하여 = 165
클래스 메소드 구현(Implementing Class Method) = 167
생성자와 소멸자(Constructor and Destructor) = 169
기본 생성자와 기본 소멸자(Default Constructor and Destructor) = 170
기본 생성자 사용법 = 170
const 멤버 함수 = 174
인터페이스와 구현 = 175
클래스 선언과 메소드 정의를 어디에서 할 것인가? = 178
inline 구현 = 179
다른 클래스를 멤버 자료로 갖는 클래스 = 181
구조체(Structures) = 186
왜 두 개의 예약어는 같은 일을 할까? = 186
요약 = 187
Q&A = 187
워크샵 = 189
퀴즈 = 189
연습문제 = 190
Day 7 프로그램의 흐름
순환문(Looping) = 192
순환문의 조상 : goto = 192
왜 goto문이 기피되는가? = 193
while 순환문 = 194
다소 복잡해진 while문 = 195
continue와 break = 197
while(true) 순환문 = 199
do...while 순환문 = 201
do...while = 202
for 순환문 = 204
for 순환문의 고급 사용 = 206
빈 for 순환문 = 209
중첩된 순환문 = 210
for 순환문에서의 범위 규칙 = 211
순환문 요약 = 212
switch문 = 214
메뉴 구성 프로그램에서 switch문 쓰기 = 217
요약 = 220
Q&A = 221
워크샵 = 222
퀴즈 = 222
연습문제 = 222
Week 1 끝마치면서
Week 2 시작하면서
Day 8 포인터
포인터란 무엇인가? = 234
포인터에 주소를 저장 = 237
포인터 일름 = 238
간접 지정 연산자 = 238
포인터, 주소, 변수 = 239
포인터를 사용한 자료 연산 = 240
주소에 대한 고찰 = 241
포인터를 사용하는 이유? = 243
스택과 자유 기억 공간(Free Store) = 244
new = 246
delete = 246
메모리 누출(Memory Leak) = 248
자유 기억 장소에 객체 만들기 = 249
객체 지우기 = 250
자료 멤버(Data Member)에 접근 = 251
자유 기억 공간의 멤버 자료에 대해 = 252
this라는 포인터 = 255
실종된 포인터(Stray or Dangling Pointer) = 257
const 포인터 = 260
const 포인터와 const 멤버 함수 = 261
const this 포인터 = 263
포인터 연산 = 263
요약 = 266
Q&A = 266
워크샵 = 267
퀴즈 = 267
연습문제 = 267
Day 9 참조자
참조자(reference)란 무엇인가? = 270
참조자에 주소 연산자 & 쓰기 = 271
참조자에 대입하기 = 272
무엇이 참조될 수 있는가? = 274
널 포인터와 널 참조자 = 276
함수 인자(Argument)를 참조자로 전달하기 = 276
swap()은 포인터를 써서 만들어 보자 = 278
이번에는 swap()를 참조자를 써서 구현 = 279
함수 헤더(Function Header)와 함수 원형(Prototype)에 대한 이해 = 281
여러개의 값을 반환하는 법 = 282
참조자를 사용한 값 반환 = 284
효율성(Efficiency)을 위해 참조자를 전달하자 = 285
상수 포인터(const Pointer) 전달하기 = 289
그 대안으로써 참조자를 쓰자 = 291
참조자와 포인터를 사용하는 때 = 293
참조자와 포인터를 섞어서 쓸 때 = 294
범위 벗어난 객체에 대한 참조자를 반환하면 안된다 = 296
힙에 있는 객체에 대한 참조자 반환하기 = 297
포인터, 도대체 누가 포인터를 가지고 있는가? = 300
요약 = 300
Q&A = 301
워크샵 = 302
퀴즈 = 302
연습문제 = 302
Day 10 고급 함수들
중첩된(Overload) 멤버 환수 = 306
기본값 사용하기(Default Value) = 308
기본값과 중첩 함수 중 어떤 것을 고를 것인가? = 310
기본 생성자(Default Constructor) = 311
생성자 중첩 = 311
객체 초기화 = 313
복사 생성자(Copy Constructor) = 314
연산자 중첩 = 319
증가함수 (Increment Function)만들기 = 320
전치 연산자(prefix Operator)를 중첩(Overloading)시키기 = 321
중첩연산자 함수에서의 반환값의 형 = 322
이름없는(Nameless) 임시 객체 반환 = 324
this 포인터 사용하기 = 325
후치 연산자 중첩시키기(Overloading the postfix Operator) = 327
전치와 후치 연산자 차이 = 327
덧셈 연산자 = 329
operator+중첩 = 331
연산자 중첩에서의 몇 가지 이야기 = 332
연산자 중첩에 있어서의 한계 = 333
무엇을 중첩시킬 것인가? = 333
대입 연산자 = 334
반환 연산자 = 336
형 변환 연산자(Conversion Operator) = 340
요약 = 341
Q&A = 342
워크샵 = 342
퀴즈 = 343
연습문제 = 343
Day 11 상속
상속(inheritance) 이란 무엇인가? = 346
상속과 파생(Inheritance and Derivation) = 346
동물의 왕국 = 348
파생 구문 = 348
전용(private) 과 보호(protected) = 350
생성자와 소멸자 = 353
베이스 생성자에게 인자 전달하기 = 355
함수 재생(Overriding Function) = 359
베이스 클래스 메소드의 은폐 = 361
베이스 메소드 호풀 = 363
가상 메소드(Virtual Method) = 365
가상 함수의 동작 원리 = 369
없는 것을 얻을 순 없다 = 371
또 하나 = 371
가상 소멸자(Virtual Destructor) = 373
가상 복사 생성자(Virtual Copy Constructor) = 373
가상 메소드를 사용하는 대가 = 377
요약 = 377
Q&A = 378
워크샵 = 379
퀴즈 = 379
연습문제 = 380
Day 12 배열과 연결 리스트
배열(Array) 이란 무엇인가? = 382
배열 원소(Array Element) = 382
배열이 끝을 지나 값을 저장할 경우 = 384
울타리 지난 오류 = 387
배열의 초기화 = 388
변수 선언 = 389
객체의 배열 = 390
다차원 배열(Multidimensional Array) = 392
다차원 배열 초기화 = 393
메모리에 관하여 = 395
포인터 배열(Array of Pointer) = 398
자유 기억 공간에 배열 지우기 = 398
char 배열(문자배열) = 400
Strcpy()와 strncpy() = 401
String 클래스 = 403
연결 리스트(Linked List)와 다른 구조체들(Structure) = 405
연결 리스트 사례연구 = 412
역할의 대리 = 413
컴포넌트 부분 = 414
여러분이 배운 것 = 423
클래스 배열(Array Class) = 424
요약 = 424
Q&A = 425
워크샵 = 426
퀴즈 = 426
연습문제 = 426
Day 13 다형성
단항 상속성(Single Inheritance)의 문제점 = 430
상승(Percolating Upward) = 432
형 변환 하향(Casting Down) = 433
두 개의 목록(List)에 넣기 = 435
다중 상속(Multiple Inheritance) = 436
다중 상속 객체의 각 부분들 = 439
다중 상속된 객체에서의 생성자 = 440
모호성 해결(Ambiguity Resolution) = 443
공유된 베이스 클래스(Shared Base Class)로부터 상속 = 443
가상 상속(Virtual Inheritance) = 448
다중 상속의 문제점들 = 452
혼합(Mixin) 그리고 만능 클래스 = 452
추상 자료형(Abstraction Data Type) = 453
순수 가상 함수(Pure Virtual Function) = 456
순수 가상 한수의 구현 = 458
추상의 복합 계층(Complex Hierarcheis of Abstraction) = 461
어떤 형이 추상인가? = 465
관찰자 패턴 = 466
다중상속, 추상 자료형, 자바에 관하여 = 467
요약 = 467
Q&A = 467
워크샵 = 469
퀴즈 = 469
연습문제 = 469
Day14 특수 클래스와 함수들 = 472
정적 멤버 자료(Static Member Data) = 477
정적 멤버 함수(Static Member Function) = 480
함수를 가리키는 포인터 = 480
함수 포인터를 사용하는 이유 = 483
함수 포인터 배열 = 486
함수 포인터를 다른 함수에 전달하는 방법 = 488
typedef를 사용한 함수 포인터 = 491
멤버 함수에 대한포인터 = 493
멤버 함수 포인터에 대한 배열 = 496
요약 = 498
Q&A = 499
워크샵 = 499
퀴즈 = 499
연습문제 = 500
Week 2 끝마치면서
Week 3 시작하면서
Day 15 고급 상속 기능
포함(Containment) = 516
포함된 클래스의 멤버에의 접근 = 522
포함된 멤버에 대한 접근 걸러내기(Filtering) = 522
포함의 대가 = 522
값에 의한 복사 = 525
상속/포함, 대리(Delegation) = 529
대리(Delegation) = 530
전용 상속(Private Inheritance) = 539
프랜드 클래스 (Friend Class) = 547
프랜드 함수(Friend Function) = 556
프랜드 함수와 연산자 중첩(Operator Overloading) = 556
삽입 연산자(Insertion Operator) 중첩 = 561
요약 = 565
Q&A = 566
워크샵 = 566
퀴즈 = 567
연습문제 = 567
Day 16 스트림
스트림(Stream)에 대한 개괄 = 570
캡슐화(Encapsulation) = 570
버퍼화(Buffering) = 571
스트림과 버퍼 = 573
표준 입출력 객체(Standard I/O Object) = 574
재지정(redirection) = 574
cin을 사용한 입력 = 575
문자열 = 576
문자열의 문제 = 577
istream 객체 참조자를 반환하는 operator>> = 579
cin의 또 다른 멤버 함수 = 580
단일 문자 입력 = 580
표준 입력으로부터 문자열을 받아들이는 법 = 583
cin.ignore() 사용하기 = 586
Peek()와 putback() = 587
cout로 출력 = 588
출력할 산출물을 방출함(flush) = 588
관련된 함수들 = 589
조종자(Manipulator), 플래그(Flag), 규격명령어(Formatting Instuction) = 590
cout.width()를 사용하는 법 = 591
채울 문자의 설정 = 592
설정 플래그(Set Flag) = 592
스트림과 printf() 함수 = 592
파일의 입력과 출력 = 594
ofstream = 598
조건을 나타내는 상태 = 599
입출력을 위한 파일 열기 = 599
파일 열기에서 ofstream 객체의 기본 작동을 변화시키는 법 = 601
이진 파일과 텍스트 파일(Binary versus Text File) = 603
명령어줄 프로세싱(Command-Line Processing) = 605
요약 = 609
Q&A = 610
워크샵 = 611
퀴즈 = 611
연습문제 = 611
Day 17 이름영역
시작 = 614
이름에 의해 해석되는 함수와 클래스 = 615
이름 영역 만들기 = 618
형의 선언 및 정의 = 619
이름 영역 밖에서의 함수 정의 = 619
새로운 멤버의 추가 = 620
이름 영역의 중첩 = 620
이름 영역 사용법 = 621
using 예약어 = 623
using 지시자 = 623
using 선언 = 625
이름 영역의 별칭 = 627
무명의 이름 영역 = 627
표준 이름 영역 std = 628
요약 = 629
Q&A = 631
퀴즈 = 631
연습문제 = 631
Day 18 객체지향 분석과 설계
C++은 객체지향인가? = 634
모델 구축 = 635
소프트웨어 설계 : 모델링 언어 = 635
소프트웨어 설계 : 프로세스 = 637
비전 = 639
요구 사항 분석 = 640
사례(Use Case) = 640
첫 번째 사례의 결정 = 642
어플리케이션 분석 = 653
시스템 분석 = 652
계획 도큐먼트 = 653
가시화 = 653
중간품 = 654
설계(Design) = 655
클래스란 무엇인가? = 655
변환 = 657
정적 모델 = 659
동적 모델(Dynamic Model) = 669
요약 = 673
Q&A = 674
워크샵 = 674
퀴즈 = 675
연습문제 = 675
Day 19 템플릿
템플릿(Template)이란 무엇인가? = 678
매개 변수화된 형 = 678
템플릿 정의 = 679
이름을 사용하여 = 681
템플릿의 구현 = 681
템플릿 함수 = 684
템플릿과 프랜드 = 685
비템플릿 프랜드 클래스와 함수 = 686
일반 템플릿 프랜드 클래스/함수 = 689
템플릿 항목 사용하기 = 692
특수화된 함수들 = 697
정적 멤버와 템플릿 = 702
표준 템플릿 라이브러리 = 706
컨테이너 = 707
순차 컨테이너 = 707
vector 컨테이너 = 707
List 컨테이너 = 714
Deque 컨테이너 = 716
스택 = 716
큐에 대한 이해 = 717
연상 컨테이너에 대한 이해 = 717
Map 컨테이너 = 718
다른 연상 컨테이너 = 721
클래스 알고리즘 = 721
무변의 순차 연산 = 722
변하는 순파 알고리즘 = 723
요약 = 724
Q&A = 725
워크샵 = 726
퀴즈 = 726
연습문제 = 726
Day 20 예외사항과 오류 처리
버그, 오류, 실수, 프로그램에 녹이 슬 때(Code Rot) = 730
예외사항(Exception)이 나타나는 환경 = 731
‘녹슨 프로그램(Code Rot)’이라는 말에 대해 = 731
예외사항(Exception) = 732
예외사항 사용법 = 733
try 블록과 catch 블록의 사용 = 738
예외사항 잡기(Catching Exception) = 738
하나 이상의 catch 문 = 739
예외사항 계층 구조 = 741
예외사항 안의 자료와 예외사항 객체의 작명법 = 744
예외사항과 템플릿 = 751
오류가 없는 예외사항 = 754
버그와 디버깅 = 755
분기점(Breakpoint) = 755
경계점(Watch Point) = 756
메모리 감시 = 756
어셈블러 = 756
요약 = 756
Q&A = 757
워크샵 = 758
퀴즈 = 758
연습문제 = 758
Day 21 다음은 무엇을 할 것인가?
전처리계와 컴파일러(Preprocessor and Compiler) = 762
중간형태(Intermediate Form)의 보기 = 762
#define 지시자 사용하기 = 763
#define 지시자를 사용한 상수 정의 = 763
검사용으로#define지시자 사용 = 763
#else 전처리계 지시자 = 764
포함(Inclusion) 및 포함 감시자(Inclusion Guard) = 765
매크로 함수(Macro Function) = 767
왜 괄호들이 필요한가? = 768
매크로와 함수 및 템플릿(Template) = 769
확장 함수(Inline Function) = 770
문자열 연산(String Manipulation) = 771
문자열 만들기 = 771
문자열 연결(Concatenation) = 772
내장 매크로(Predefined Macro) = 773
assert() = 773
assert()를 가지고 디버깅하기 = 775
assert()와 예외사항(Exception) = 775
부작용(Sido Effcct) = 776
클래스의 불변성(Invariants) = 776
중간값(Interim Value) 출력 = 781
디버그 수준(Debug Level) = 782
비트 연산(Bit Twiddling) = 788
비트 연산자 AND = 789
비트 연산자 OR = 789
배타적 비트 OR 연산자 = 789
보수 연산자(Complement 연산자) = 789
비트 설정(Setting Bits) = 789
비트 초기화 = 790
비트 바꾸기(Flipping Bits) = 790
비트 필드(Bit field) = 791
문체(Style) = 794
들여쓰기(Indenting) = 794
중괄호 정렬 = 794
긴 줄의 처리 = 795
switch문 정렬 = 795
프로그램 코드 텍스트 = 795
상술자(Identifier) 작명법 = 796
이름에 철자 붙이기와 대문자 붙이기 = 797
주석 = 797
접근(Access) = 798
클래스 정의 = 798
include 파일 = 799
assert() = 799
const = 799
다음 단계 = 799
어디에서 도움과 충고를 구할 것인가? = 800
직접 연락을 원할때 = 800
요약 = 800
Q&A = 801
퀴즈 = 803
연습문제 = 803
Week 3 끝마치면서
Appendix A 연산자 우선순위 = 819
Appendix B C++예약어 = 821
Appendix C 이진법과 16진법 = 823
Appendix D 해답 = 833
찾아보기 = 885
