이미 소장하고 있다면 판매해 보세요.
|
역자 서문
머리말 1부 유틸리티 Chapter 1 튜플_3 1.1 헤더 1.2 tuple 클래스 템플릿 5 1.2.1 tuple 객체의 생성 6 1.2.2 접근 9 1.2.3 형식 질의 12 1.2.4 비교 13 1.3 std::pair에 tuple처럼 접근하기 16 1.3.1 헤더 1.3.2 세부사항 17 연습문제 19 Chapter 2 똑똑한 포인터_25 2.1 정의 26 2.2 예제에 대해 28 2.3 헤더 2.4 shared_ptr 클래스 템플릿 29 2.4.1 shared_ptr 요약 30 2.4.2 shared_ptr 객체의 생성 31 2.4.3 shared_ptr 객체의 파괴 35 2.4.4 피제어 자원에 접근하기 35 2.4.5 shared_ptr 객체의 상태 질의 37 2.4.6 shared_ptr 객체에 배정하기 39 2.4.7 shared_ptr 객체 수정하기 41 2.4.8 shared_ptr 객체들의 비교 42 2.4.9 shared_ptr 객체를 스트림에 삽입하기 45 2.4.10. 함수 템플릿 get_deleter 46 2.5 weak_ptr 클래스 템플릿 47 2.5.1 weak_ptr 요약 49 2.5.2 weak_ptr 객체 생성하기 50 2.5.3 weak_ptr 객체의 파괴 51 2.5.4 shared_ptr 객체 얻기 51 2.5.5 객체의 상태 질의 53 2.5.6 weak_ptr 객체에 배정하기 55 2.5.7 weak_ptr 객체 수정하기 56 2.5.8 weak_ptr 객체들의 비교 57 2.6 enable_shared_from_this 클래스 템플릿 59 2.6.1 접근 60 2.6.2 생성, 파괴, 배정 61 2.7 bad_weak_ptr 클래스 62 2.8 변환 62 2.8.1 포인터 변환 62 2.8.2 객체 변환 63 2.8.3 명시적 변환 65 2.9 피제어 자원의 파괴 68 2.9.1 삭제자 객체가 없는 자원 69 2.9.2 삭제자 객체가 있는 자원 70 2.10 예외 72 2.11 다중 스레딩 74 연습문제 74 2부 컨테이너 Chapter 3 컨테이너의 기초_83 3.1 STL 구성요소 83 3.2 컨테이너 88 더 읽을거리 92 연습문제 93 Chapter 4 array 클래스 템플릿_95 4.1 클래스 템플릿 array 98 4.2 질의 101 4.3 접근 102 4.4 수정 103 4.5 반복 106 4.6 내포된 형식 이름 108 4.7 비교 110 4.8 tuple 비슷한 인터페이스 112 연습문제 112 Chapter 5 순서 없는 연관 컨테이너_115 5.1 해시 표의 표준화 116 5.2 해시 표 117 5.3 연관 컨테이너와 순서 없는 컨테이너 119 5.4 순서 없는 컨테이너의 요구사항 120 5.4.1 컨테이너 요구사항 120 5.4.2 순서 없는 컨테이너 요구사항 122 5.4.3 예외 안전성 126 5.5 헤더 5.6 클래스 템플릿 hash 128 5.7 순서 없는 컨테이너의 인스턴스화 130 5.8 컨테이너 객체의 생성 132 5.9 컨테이너의 연산들 133 5.10 적재율과 재해싱 136 5.11 조율 138 더 읽을거리 139 연습문제 139 3부 호출 포장자 Chapter 6호출 포장자의 기초_143 6.1 용어 144 6.2 호출 포장자 형식에 대한 요구사항 146 6.3 헤더 6.4 result_of 클래스 템플릿 151 6.5 기존 함수 객체와 함께 사용하기 154 연습문제 158 Chapter 7 mem_fn 함수 템플릿_163 연습문제 168 Chapter 8 reference_wrapper 클래스 템플릿_171 8.1 생성 172 8.2 내포된 형식 175 8.3 호출 176 연습문제 178 Chapter 9 function 클래스 템플릿_181 9.1 function 객체의 생성 183 9.2 접근 185 9.3 수정 186 9.4 비교 188 9.5 내포된 형식 189 9.6 호출 190 9.7 대상 객체 191 연습문제 193 Chapter 10 bind 함수 템플릿_195 10.1 자리표 197 10.2 불특정 형식 bind(.....) 198 10.2.1 bind에 대한 추가 인수들 199 10.2.2 보통의 인수 200 10.2.3 자리표 인수 202 10.2.4 bind 인수 205 10.2.5. reference_wrapper 인수 207 10.3 bind의 확장 208 연습문제 209 4부 형식 특질 Chapter 11 형식 특질_213 11.1 헤더 11.2 보조 형식 219 11.3 기본 형식 범주 220 11.4 합성 형식 범주 223 11.5 형식 속성 224 11.6 형식 관계 233 11.7 형식 변환 234 11.8 정렬 236 더 읽을거리 237 연습문제 238 5부 수치 Chapter 12 수치함수_243 12.1 예제에 대해 244 12.2 부동소수점 값의 표현 245 12.2.1 부동소수점 모형 245 12.2.2 부동소수점 형식의 속성 246 12.2.3 부동소수점 형식들 247 12.3 부동소수점 환경의 관리 248 12.3.1 헤더 12.3.2 부동소수점 환경 251 12.3.3 반올림 252 12.3.4 부동소수점 예외 253 12.4 무한, 비정규, NaN, 비교 257 12.5 정의역 오류와 치역 오류 259 12.6 새로운 중복적재 규칙 259 12.7 기본 수학 함수 260 12.7.1 헤더 12.7.2 분류 함수 262 12.7.3 비교 함수 263 12.7.4 절대값 264 12.7.5 최대, 최소 264 12.7.6 반올림 265 12.7.7 나머지 269 12.7.8 삼각 함수 269 12.7.9 쌍곡선 함수 271 12.7.10 지수 함수 272 12.7.11 로그 273 12.7.12 거듭제곱과 제곱근 274 12.7.13 비례 275 12.7.14 값 조작 함수 276 12.7.15 부동소수점 곱하기·더하기 277 12.8 특수 수학 함수들 278 12.8.1 헤더 12.8.2 라게레 다항식 280 12.8.3 르장드르 함수 280 12.8.4 감마 함수 282 12.8.5 베타 함수 282 12.8.6 오차 함수 282 12.8.7 타원 적분 283 12.8.8 초기하 함수 285 12.8.9 베셀 함수 286 12.8.10 노이만 함수 287 12.8.11 지수 적분 288 12.8.12 에르미트 다항식 288 12.8.13 제타 함수 289 12.9 복소수 함수 289 12.9.1 헤더 12.9.2 절대값 290 12.9.3 성분 291 12.9.4 삼각함수 292 12.9.5 쌍곡선 함수 293 12.9.6 지수 및 로그 함수 294 12.9.7 거듭제곱과 제곱근 295 12.9.8 기타 함수 295 더 읽을거리 296 연습문제 297 Chapter 13 난수 발생기_303 13.1 난수 엔진 306 13.2 TR1 라이브러리의 엔진 템플릿 308 13.2.1 기본 엔진 linear_congruential 311 13.2.2 기본 엔진 mersenne_twister 312 13.2.3 기본 엔진 subtract_with_carry 314 13.2.4 기본 엔진 subtract_with_carry_01 315 13.2.5 복합 엔진 discard_block 317 13.2.6 복합 엔진 xor_combine 318 13.3 TR1 라이브러리 클래스 random_device 319 13.4 TR1 라이브러리에 미리 정의된 엔진 320 13.4.1 minstd_rand0 320 13.4.2 minstd_rand 320 13.4.3 mt19937 321 13.4.4 ranlux3 321 13.4.5 ranlux4 321 13.4.6 ranlux_base_01 321 13.4.7 ranlux64_base_01 322 13.4.8 ranlux3_01 322 13.4.9 ranlux4_01 322 13.5 난수 분포 322 13.6 이산 분포 324 13.6.1 bernoulli_distribution 325 13.6.2 binomial_distribution 325 13.6.3 geometric_distribution 326 13.6.4 poisson_distribution 327 13.6.5 uniform_int 328 13.7 연속 분포 329 13.7.1 exponential_distribution 329 13.7.2 gamma_distribution 330 13.7.3 normal_distribution 331 13.7.4 uniform_real 332 13.8 variate_generator 클래스 템플릿 333 더 읽을거리 339 연습문제 339 6부 정규 표현식 Chapter 14 더 읽을거리 349 Chapter 15 정규 표현식 문법_351 15.1 정규 표현식의 구조 352 15.1.1 요소 352 15.1.2 되풀이 355 15.1.3 연결 356 15.1.4 대안(alternation) 356 15.1.5 부분표현식 357 15.2 문법 특징 357 15.3 정규 표현식의 세부사항 358 15.3.1 앵커 358 15.3.2 후방 참조 358 15.3.3 대괄호식 359 15.3.4 갈무리 그룹 359 15.3.5 문자 부류 360 15.3.6 문자 범위 360 15.3.7 취합 요소 361 15.3.8 취합 기호 361 15.3.9 제어 탈출열 361 15.3.10 DSW 문자 탈출 362 15.3.11 동치류 362 15.3.12 파일 서식 탈출 362 15.3.13 16진 탈출열 362 15.3.14 항등 탈출 363 15.3.15 개별 문자 363 15.3.16 부정 단언 364 15.3.17 부정 단어 경계 단언 364 15.3.18 비갈무리 그룹 364 15.3.19 8진 탈출열 364 15.3.20 보통 문자 365 15.3.21 긍정 단언 365 15.3.22 유니코드 탈출열 366 15.3.23 와일드카드 문자 366 15.3.24 단어 경계 단언 366 15.4 연습문제에 관해 366 연습문제 368 Chapter 16 정규 표현식 객체_371 16.1 정의 372 16.2 헤더 16.3 구문 선택사항 375 16.3.1 대소문자 구분 없는 비교 376 16.3.2 문자 범위와 collate 플래그 378 16.3.3 nosubs 플래그 378 16.3.4 검색의 최적화 379 16.4 basic_regex 클래스 템플릿 379 16.4.1 basic_regex 요약 381 16.4.2 basic_regex 객체의 생성 382 16.4.3 basic_regex 객체의 배정 383 16.4.4 basic_regex 객체들의 교환 384 16.4.5 로캘 385 16.4.6 접근 385 16.5 미리 정의된 basic_regex 형식들 389 16.6 오류 처리 389 연습문제 392 Chapter 17 검색_393 17.1 헤더 17.2 전체 부합 397 17.3 검색 399 17.4 검색 선택사항 400 17.4.1 match_default 플래그 401 17.4.2 match_not_bol 플래그 401 17.4.3 match_not_eol 플래그 402 17.4.4 match_not_bow 플래그 402 17.4.5 match_not_eow 플래그 404 17.4.6 match_any 플래그 404 17.4.7 match_not_null 플래그 405 17.4.8 match_continuous 플래그 406 17.4.9 match_prev_avail 플래그 407 연습문제 408 Chapter 18 검색 결과_411 18.1 헤더 18.2 sub_match 클래스 템플릿 414 18.2.1 내포된 형식 416 18.2.2 접근 416 18.2.3 비교 417 18.3 미리 정의된 sub_match 형식 424 18.4 match_results 클래스 템플릿 426 18.4.1 match_results 객체의 생성과 수정 428 18.4.2 개별 부합의 조사 430 18.4.3 모든 부합 훑기 432 18.4.4 일반적인 질의 433 18.4.5 내포된 형식 434 18.4.6 match_results 객체들의 비교 435 18.4.7 미리 정의된 match_results 형식 435 18.4.8 텍스트 서식화 436 연습문제 436 Chapter 19 반복 검색_439 19.1 주먹구구식 검색 441 19.1.1 앵커가 소실되는 문제 442 19.1.2 단어 경계가 소실되는 문제 443 19.1.3 빈 부합 445 19.2 regex_iterator 클래스 템플릿 450 19.2.1 내포된 형식 454 19.2.2 생성 및 배정 455 19.2.3 역참조 456 19.2.4 수정 458 19.2.5 비교 460 19.2.6 미리 정의된 regex_iterator 형식 461 19.3 regex_token_iterator 클래스 템플릿 462 19.3.1 내포된 형식 466 19.3.2 생성 및 배정 466 19.3.3 역참조 468 19.3.4 수정 468 19.3.5 비교 469 19.3.6 미리 정의된 regex_token_iterator 형식 471 연습문제 471 Chapter 20 서식화와 텍스트 치환_477 20.1 서식화 선택사항 482 20.2 텍스트 서식화 483 20.3 텍스트 치환 485 연습문제 489 Chapter 21 정규식 커스텀화하기_491 21.1 문자 특질 492 21.2 로캘 493 21.3 문자 부합 494 21.4 취합 495 21.5 문자 부류 496 21.6 regex_traits 클래스 템플릿 498 7부 C 호환성 Chapter 22 C 호환성_503 22.1 정수 형식 503 22.2 64비트 정수 형식 505 22.2.1 64비트 형식들의 이름 505 22.2.2 64비트 형식들의 값 범위 506 22.2.3 헤더 22.3 고정 크기 정수 형식 509 22.3.1 헤더 22.3.2 헤더 22.3.3 헤더 22.4 문자열 변환 515 22.5 서식 지정자 516 22.5.1 헤더 22.5.2 추가적인 서식 지정자 517 22.5.3 hexfloat 조작자 522 22.6 서식화된 I/O 524 22.6.1 가변길이 인수 목록 524 22.6.2 가변 길이 인수 목록의 복사 525 22.6.3 printf, scanf 부류 함수 526 22.7 문자의 분류 527 22.8 부울 형식 527 연습문제 528 부록 부록A 헤더들_531 A.1 헤더 A.2 헤더 A.3 헤더 A.4 헤더 A.5 헤더 A.6 헤더 A.7 헤더 A.8 헤더 부록B 유틸리티 헤더_569 B.1 "sputil.h" 569 B.2 "mathutil.h" 571 B.3 "rgxutil.h" 572 부록C 유틸리티 헤더_575 C.1 문제점 575 C.2 라이브러리와 다중 스레딩 577 참고문헌_579 색인_582 |
|
역자 서문
머리말 1부 유틸리티 Chapter 1 튜플_3 1.1 헤더 1.2 tuple 클래스 템플릿 5 1.2.1 tuple 객체의 생성 6 1.2.2 접근 9 1.2.3 형식 질의 12 1.2.4 비교 13 1.3 std::pair에 tuple처럼 접근하기 16 1.3.1 헤더 1.3.2 세부사항 17 연습문제 19 Chapter 2 똑똑한 포인터_25 2.1 정의 26 2.2 예제에 대해 28 2.3 헤더 2.4 shared_ptr 클래스 템플릿 29 2.4.1 shared_ptr 요약 30 2.4.2 shared_ptr 객체의 생성 31 2.4.3 shared_ptr 객체의 파괴 35 2.4.4 피제어 자원에 접근하기 35 2.4.5 shared_ptr 객체의 상태 질의 37 2.4.6 shared_ptr 객체에 배정하기 39 2.4.7 shared_ptr 객체 수정하기 41 2.4.8 shared_ptr 객체들의 비교 42 2.4.9 shared_ptr 객체를 스트림에 삽입하기 45 2.4.10. 함수 템플릿 get_deleter 46 2.5 weak_ptr 클래스 템플릿 47 2.5.1 weak_ptr 요약 49 2.5.2 weak_ptr 객체 생성하기 50 2.5.3 weak_ptr 객체의 파괴 51 2.5.4 shared_ptr 객체 얻기 51 2.5.5 객체의 상태 질의 53 2.5.6 weak_ptr 객체에 배정하기 55 2.5.7 weak_ptr 객체 수정하기 56 2.5.8 weak_ptr 객체들의 비교 57 2.6 enable_shared_from_this 클래스 템플릿 59 2.6.1 접근 60 2.6.2 생성, 파괴, 배정 61 2.7 bad_weak_ptr 클래스 62 2.8 변환 62 2.8.1 포인터 변환 62 2.8.2 객체 변환 63 2.8.3 명시적 변환 65 2.9 피제어 자원의 파괴 68 2.9.1 삭제자 객체가 없는 자원 69 2.9.2 삭제자 객체가 있는 자원 70 2.10 예외 72 2.11 다중 스레딩 74 연습문제 74 2부 컨테이너 Chapter 3 컨테이너의 기초_83 3.1 STL 구성요소 83 3.2 컨테이너 88 더 읽을거리 92 연습문제 93 Chapter 4 array 클래스 템플릿_95 4.1 클래스 템플릿 array 98 4.2 질의 101 4.3 접근 102 4.4 수정 103 4.5 반복 106 4.6 내포된 형식 이름 108 4.7 비교 110 4.8 tuple 비슷한 인터페이스 112 연습문제 112 Chapter 5 순서 없는 연관 컨테이너_115 5.1 해시 표의 표준화 116 5.2 해시 표 117 5.3 연관 컨테이너와 순서 없는 컨테이너 119 5.4 순서 없는 컨테이너의 요구사항 120 5.4.1 컨테이너 요구사항 120 5.4.2 순서 없는 컨테이너 요구사항 122 5.4.3 예외 안전성 126 5.5 헤더 5.6 클래스 템플릿 hash 128 5.7 순서 없는 컨테이너의 인스턴스화 130 5.8 컨테이너 객체의 생성 132 5.9 컨테이너의 연산들 133 5.10 적재율과 재해싱 136 5.11 조율 138 더 읽을거리 139 연습문제 139 3부 호출 포장자 Chapter 6호출 포장자의 기초_143 6.1 용어 144 6.2 호출 포장자 형식에 대한 요구사항 146 6.3 헤더 6.4 result_of 클래스 템플릿 151 6.5 기존 함수 객체와 함께 사용하기 154 연습문제 158 Chapter 7 mem_fn 함수 템플릿_163 연습문제 168 Chapter 8 reference_wrapper 클래스 템플릿_171 8.1 생성 172 8.2 내포된 형식 175 8.3 호출 176 연습문제 178 Chapter 9 function 클래스 템플릿_181 9.1 function 객체의 생성 183 9.2 접근 185 9.3 수정 186 9.4 비교 188 9.5 내포된 형식 189 9.6 호출 190 9.7 대상 객체 191 연습문제 193 Chapter 10 bind 함수 템플릿_195 10.1 자리표 197 10.2 불특정 형식 bind(.....) 198 10.2.1 bind에 대한 추가 인수들 199 10.2.2 보통의 인수 200 10.2.3 자리표 인수 202 10.2.4 bind 인수 205 10.2.5. reference_wrapper 인수 207 10.3 bind의 확장 208 연습문제 209 4부 형식 특질 Chapter 11 형식 특질_213 11.1 헤더 11.2 보조 형식 219 11.3 기본 형식 범주 220 11.4 합성 형식 범주 223 11.5 형식 속성 224 11.6 형식 관계 233 11.7 형식 변환 234 11.8 정렬 236 더 읽을거리 237 연습문제 238 5부 수치 Chapter 12 수치함수_243 12.1 예제에 대해 244 12.2 부동소수점 값의 표현 245 12.2.1 부동소수점 모형 245 12.2.2 부동소수점 형식의 속성 246 12.2.3 부동소수점 형식들 247 12.3 부동소수점 환경의 관리 248 12.3.1 헤더 12.3.2 부동소수점 환경 251 12.3.3 반올림 252 12.3.4 부동소수점 예외 253 12.4 무한, 비정규, NaN, 비교 257 12.5 정의역 오류와 치역 오류 259 12.6 새로운 중복적재 규칙 259 12.7 기본 수학 함수 260 12.7.1 헤더 12.7.2 분류 함수 262 12.7.3 비교 함수 263 12.7.4 절대값 264 12.7.5 최대, 최소 264 12.7.6 반올림 265 12.7.7 나머지 269 12.7.8 삼각 함수 269 12.7.9 쌍곡선 함수 271 12.7.10 지수 함수 272 12.7.11 로그 273 12.7.12 거듭제곱과 제곱근 274 12.7.13 비례 275 12.7.14 값 조작 함수 276 12.7.15 부동소수점 곱하기·더하기 277 12.8 특수 수학 함수들 278 12.8.1 헤더 12.8.2 라게레 다항식 280 12.8.3 르장드르 함수 280 12.8.4 감마 함수 282 12.8.5 베타 함수 282 12.8.6 오차 함수 282 12.8.7 타원 적분 283 12.8.8 초기하 함수 285 12.8.9 베셀 함수 286 12.8.10 노이만 함수 287 12.8.11 지수 적분 288 12.8.12 에르미트 다항식 288 12.8.13 제타 함수 289 12.9 복소수 함수 289 12.9.1 헤더 12.9.2 절대값 290 12.9.3 성분 291 12.9.4 삼각함수 292 12.9.5 쌍곡선 함수 293 12.9.6 지수 및 로그 함수 294 12.9.7 거듭제곱과 제곱근 295 12.9.8 기타 함수 295 더 읽을거리 296 연습문제 297 Chapter 13 난수 발생기_303 13.1 난수 엔진 306 13.2 TR1 라이브러리의 엔진 템플릿 308 13.2.1 기본 엔진 linear_congruential 311 13.2.2 기본 엔진 mersenne_twister 312 13.2.3 기본 엔진 subtract_with_carry 314 13.2.4 기본 엔진 subtract_with_carry_01 315 13.2.5 복합 엔진 discard_block 317 13.2.6 복합 엔진 xor_combine 318 13.3 TR1 라이브러리 클래스 random_device 319 13.4 TR1 라이브러리에 미리 정의된 엔진 320 13.4.1 minstd_rand0 320 13.4.2 minstd_rand 320 13.4.3 mt19937 321 13.4.4 ranlux3 321 13.4.5 ranlux4 321 13.4.6 ranlux_base_01 321 13.4.7 ranlux64_base_01 322 13.4.8 ranlux3_01 322 13.4.9 ranlux4_01 322 13.5 난수 분포 322 13.6 이산 분포 324 13.6.1 bernoulli_distribution 325 13.6.2 binomial_distribution 325 13.6.3 geometric_distribution 326 13.6.4 poisson_distribution 327 13.6.5 uniform_int 328 13.7 연속 분포 329 13.7.1 exponential_distribution 329 13.7.2 gamma_distribution 330 13.7.3 normal_distribution 331 13.7.4 uniform_real 332 13.8 variate_generator 클래스 템플릿 333 더 읽을거리 339 연습문제 339 6부 정규 표현식 Chapter 14 더 읽을거리 349 Chapter 15 정규 표현식 문법_351 15.1 정규 표현식의 구조 352 15.1.1 요소 352 15.1.2 되풀이 355 15.1.3 연결 356 15.1.4 대안(alternation) 356 15.1.5 부분표현식 357 15.2 문법 특징 357 15.3 정규 표현식의 세부사항 358 15.3.1 앵커 358 15.3.2 후방 참조 358 15.3.3 대괄호식 359 15.3.4 갈무리 그룹 359 15.3.5 문자 부류 360 15.3.6 문자 범위 360 15.3.7 취합 요소 361 15.3.8 취합 기호 361 15.3.9 제어 탈출열 361 15.3.10 DSW 문자 탈출 362 15.3.11 동치류 362 15.3.12 파일 서식 탈출 362 15.3.13 16진 탈출열 362 15.3.14 항등 탈출 363 15.3.15 개별 문자 363 15.3.16 부정 단언 364 15.3.17 부정 단어 경계 단언 364 15.3.18 비갈무리 그룹 364 15.3.19 8진 탈출열 364 15.3.20 보통 문자 365 15.3.21 긍정 단언 365 15.3.22 유니코드 탈출열 366 15.3.23 와일드카드 문자 366 15.3.24 단어 경계 단언 366 15.4 연습문제에 관해 366 연습문제 368 Chapter 16 정규 표현식 객체_371 16.1 정의 372 16.2 헤더 16.3 구문 선택사항 375 16.3.1 대소문자 구분 없는 비교 376 16.3.2 문자 범위와 collate 플래그 378 16.3.3 nosubs 플래그 378 16.3.4 검색의 최적화 379 16.4 basic_regex 클래스 템플릿 379 16.4.1 basic_regex 요약 381 16.4.2 basic_regex 객체의 생성 382 16.4.3 basic_regex 객체의 배정 383 16.4.4 basic_regex 객체들의 교환 384 16.4.5 로캘 385 16.4.6 접근 385 16.5 미리 정의된 basic_regex 형식들 389 16.6 오류 처리 389 연습문제 392 Chapter 17 검색_393 17.1 헤더 17.2 전체 부합 397 17.3 검색 399 17.4 검색 선택사항 400 17.4.1 match_default 플래그 401 17.4.2 match_not_bol 플래그 401 17.4.3 match_not_eol 플래그 402 17.4.4 match_not_bow 플래그 402 17.4.5 match_not_eow 플래그 404 17.4.6 match_any 플래그 404 17.4.7 match_not_null 플래그 405 17.4.8 match_continuous 플래그 406 17.4.9 match_prev_avail 플래그 407 연습문제 408 Chapter 18 검색 결과_411 18.1 헤더 18.2 sub_match 클래스 템플릿 414 18.2.1 내포된 형식 416 18.2.2 접근 416 18.2.3 비교 417 18.3 미리 정의된 sub_match 형식 424 18.4 match_results 클래스 템플릿 426 18.4.1 match_results 객체의 생성과 수정 428 18.4.2 개별 부합의 조사 430 18.4.3 모든 부합 훑기 432 18.4.4 일반적인 질의 433 18.4.5 내포된 형식 434 18.4.6 match_results 객체들의 비교 435 18.4.7 미리 정의된 match_results 형식 435 18.4.8 텍스트 서식화 436 연습문제 436 Chapter 19 반복 검색_439 19.1 주먹구구식 검색 441 19.1.1 앵커가 소실되는 문제 442 19.1.2 단어 경계가 소실되는 문제 443 19.1.3 빈 부합 445 19.2 regex_iterator 클래스 템플릿 450 19.2.1 내포된 형식 454 19.2.2 생성 및 배정 455 19.2.3 역참조 456 19.2.4 수정 458 19.2.5 비교 460 19.2.6 미리 정의된 regex_iterator 형식 461 19.3 regex_token_iterator 클래스 템플릿 462 19.3.1 내포된 형식 466 19.3.2 생성 및 배정 466 19.3.3 역참조 468 19.3.4 수정 468 19.3.5 비교 469 19.3.6 미리 정의된 regex_token_iterator 형식 471 연습문제 471 Chapter 20 서식화와 텍스트 치환_477 20.1 서식화 선택사항 482 20.2 텍스트 서식화 483 20.3 텍스트 치환 485 연습문제 489 Chapter 21 정규식 커스텀화하기_491 21.1 문자 특질 492 21.2 로캘 493 21.3 문자 부합 494 21.4 취합 495 21.5 문자 부류 496 21.6 regex_traits 클래스 템플릿 498 7부 C 호환성 Chapter 22 C 호환성_503 22.1 정수 형식 503 22.2 64비트 정수 형식 505 22.2.1 64비트 형식들의 이름 505 22.2.2 64비트 형식들의 값 범위 506 22.2.3 헤더 22.3 고정 크기 정수 형식 509 22.3.1 헤더 22.3.2 헤더 22.3.3 헤더 22.4 문자열 변환 515 22.5 서식 지정자 516 22.5.1 헤더 22.5.2 추가적인 서식 지정자 517 22.5.3 hexfloat 조작자 522 22.6 서식화된 I/O 524 22.6.1 가변길이 인수 목록 524 22.6.2 가변 길이 인수 목록의 복사 525 22.6.3 printf, scanf 부류 함수 526 22.7 문자의 분류 527 22.8 부울 형식 527 연습문제 528 부록 부록A 헤더들_531 A.1 헤더 A.2 헤더 A.3 헤더 A.4 헤더 A.5 헤더 A.6 헤더 A.7 헤더 A.8 헤더 부록B 유틸리티 헤더_569 B.1 "sputil.h" 569 B.2 "mathutil.h" 571 B.3 "rgxutil.h" 572 부록C 유틸리티 헤더_575 C.1 문제점 575 C.2 라이브러리와 다중 스레딩 577 참고문헌_579 색인_582 |
|
21세기 C++의 미래를 결정할 차기 C++ 표준이 차츰 모습을 잡아나가고 있습니다. 차기 C++ 표준을 흔히 C++0x라고 부르는데, 이것은 표준 개정 작업을 2010년이 되기 전에 완료하겠다는 의지를 담은 이름입니다. x가 16진수일 수도 있다는 농담이 떠돈 적도 있었지만, 최근의 작업 진척 속도로 보아서 x는 10진수일 가능성이 큽니다. 큰 문제가 없는 한 새 C++ 표준은 적어도 2009년에는 발표될 것이며, 2009년은 그리 먼 미래가 아닙니다.
이 책은 C++ 표준 중 표준 라이브러리 부분에 추가될 것이 거의 확실한 TR1 라이브러리를 소개합니다. 책을 훑어보면(또는 저자의 머리말만 봐도) 알겠지만 많은 사람들이 기다리던 요소들이 대거 포함되었습니다. 어쩌면 일부 요소들을 직접 만들어서 사용해 왔거나 Boost의 해당 라이브러리를 이용해 온 독자도 있겠지만, 표준에 포함되었느냐 아니냐의 여부는 코드의 이식성과 가독성, 재사용성 측면에서 큰 차이가 있습니다. 다른 말로 하면, 그냥 내가 만든 코드가 내 시스템에서 잘 작동하기만 하면 된다는 근시안적인 관점에서 벗어나서, 자신뿐만 아니라 다른 사람들을 위해 코드의 유지보수와 재사용에까지 관심을 가지는 C++ 프로그래머라면 TR1 라이브러리를 공부할 필요가 있다고 생각합니다. 이 책에서 독자의 기존 코드를 좀 더 깔끔하고 효율적으로 만드는 데 도움이 될 클래스들과 함수들을 발견할 수 있을 것입니다. 그런데 그런 요소들을 사용하기 위해 2009년까지 기다릴 필요는 없습니다. 저자의 머리말에 언급되어 있듯이 Dinkumware, Ltd.는 이미 TR1 라이브러리의 완전한 구현을 판매하고 있습니다. 그리고 좀 더 저렴한(사실은 완전히 공짜인) 방법을 찾는다면 g++과 Boost.TR1의 조합이 좋은 대안이 될 것입니다. 이 책을 번역하면서 저는 Windows XP에서 gcc 4.1.2와 Boost 1.34.0을 포함한 커스텀 MinGW 빌드와 Dev-C++(IDE용)을 이용해서 책의 예제들 대다수를 성공적으로 컴파일하고 실행할 수 있었습니다. 이에 대한 좀 더 자세한 내용은 제 홈페이지 occam’s Razor1)에 정리해 두겠습니다. 참고로 이 번역서는 Addison-Wesley가 출판한 The C++ Standard Library Extensions: A Tutorial and Reference의 2006년 6월자 제1쇄를 번역한 것이며, 원서의 정오표2)를 마지막으로 반영한 것은 2007년 7월 초입니다. 원서 정오표에 아직 등록되지 않은 오타나 오류들도 TR1 문서를 참고해서 수정했으며, 일부 사소하지 않은 수정의 경우에는 역주로도 언급해 두었습니다. 항상 그렇듯이 제 홈페이지 occam’s Razor에 이 책에 대한 추가적인 정오표와 새로 갱신된 내용을 담은 페이지를 마련해 두겠습니다. 오류 보고나 책에 대한 의견도 환영합니다. --- 역자의 말 |