장바구니 담기 close

장바구니에 상품을 담았습니다.

C++ STANDARD LIBRARY

C++ STANDARD LIBRARY

  • 니콜라이 M.조슈티스
  • |
  • 정보문화사
  • |
  • 2007-03-09 출간
  • |
  • 859페이지
  • |
  • 210 X 297 mm
  • |
  • ISBN 9788956743691
판매가

30,000원

즉시할인가

27,000

카드할인

0원(즉시할인 0%)

적립금

1,500원 적립(5%적립)

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

추가혜택

네이버페이 무조건 1%적립+ 추가 1%적립

수량
+ -
총주문금액
27,000

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

이 책은 ANSI/ISO C++ language standard에 포함된 C++ 표준 라이브러리의 가장 최근의 내용을 반영하고 있으며, 그 중 컨테이너, 반복자, 함수-객체, 알고리즘 등을 주의 깊게 다룬 표준 템플릿 라이브러리(Standard Template Library)에 그 초점을 맞추고 있다.

독자들은 또한 특별한 컨테이너, 스트링, 수치관련 클래스, 국제화, IOStream 라이브러리에 이르는 상세한 설명도 볼 수 있을 것이다. 이들 컴포넌트 또한 STL과 마찬가지로 디자인 철학 및 사용 목적, 전반적인 사항에 대해서 상세하게 설명되어 있다. 뿐만 아니라 기본적인 개념에 대한 통찰력 있는 소개와 라이브러리에 대한 간략한 소개는 초보자들도 빠르게 배울 수 있도록 도와줄 것이다.

포괄적이며 상세한, 그리고 읽기 쉬울 뿐 아니라 실용적인 "C++ 표준 라이브러리(C++ Standard Library)"로 하여금 독자는 C++의 사용을 다시 한 번 생각해 보게 될 것이다.

목차

Chapter 1 이 책에 대하여

1.1 왜 이 책인가?
1.2 이 책을 읽기 전에 반드시 알아야 할 것은 무엇인가?
1.3 이 책의 스타일 및 구성 방법
1.4 이 책을 읽는 방법
1.5 현재의 기술 수준
1.6 예제 코드와 추가 정보
1.7 피드백(Feedback)

Chapter 2 C++와 표준 라이브러리의 소개

2.1 역사
2.2 C++ 언어의 새로운 특징
2.2.1 템플릿
2.2.2 기본적인 타입을 위한 명시적인 초기화
2.2.3 예외 처리
2.2.4 namespace
2.2.5 bool 타입
2.2.6 explicit 키워드
2.2.7 타입 변환을 위한 새로운 연산자
2.2.8 static 상수 멤버의 초기화
2.2.9 main( )의 정의
2.3 복잡도(Complexity)와 Big-O 표시법

Chapter 3 일반적인 개념(General Concept)

3.1 namespace std
3.2 헤더(header) 파일
3.3 에러와 예외 처리
3.3.1 표준 예외 클래스
3.3.2 예외 클래스의 멤버 함수
3.3.3 표준 예외의 전달
3.3.4 표준 예외 클래스의 상속
3.4 할당자

Chapter 4 유틸리티(Utilities)

4.1 Pairs
4.1.1 편리한 make_pair( ) 함수
4.1.2 Pair의 사용 예
4.2 auto_ptr 클래스
4.2.1 auto_ptr 클래스의 등장 배경
4.2.2 auto_ptr에 의한 소유권 이전
4.2.3 멤버 변수로의 auto_ptr
4.2.4 auto_ptr의 잘못된 사용 사례
4.2.5 auto_ptr 예제
4.2.6 클래스 auto_ptr의 세부사항
4.3 수치 제한(Numeric Limits)
4.4 보조 함수(Auxiliary Function)
4.4.1 최소값과 최대값의 처리
4.4.2 두 값의 교환
4.5 비교 연산자의 확장
4.6 와 헤더 파일
4.6.1 의 정의
4.6.2 의 정의

Chapter 5 표준 템플릿 라이브러리

5.1 STL 컴포넌트
5.2 컨테이너
5.2.1 시퀀스 컨테이너
5.2.2 연관 컨테이너
5.2.3 컨테이너 어댑터
5.3 반복자
5.3.1 연관 컨테이너 예제
5.3.2 반복자의 카테고리
5.4 알고리즘
5.4.1 범위
5.4.2 다중 범위 처리
5.5 반복자 어댑터(Iterator Adapter)
5.5.1 삽입 반복자
5.5.2 스트림 반복자
5.5.3 역방향 반복자
5.6 조작 알고리즘
5.6.1 원소의 제거
5.6.2 연관 컨테이너와 조작 알고리즘
5.6.3 알고리즘과 멤버 함수
5.7 사용자 정의 제네릭 함수들
5.8 알고리즘 인자로서의 함수
5.8.1 알고리즘 인자로서의 함수 사용 예제
5.8.2 조건자(Predicates)
5.9 함수-객체
5.9.1 함수-객체란?
5.9.2 미리 정의된 함수-객체
5.10 컨테이너 원소
5.10.1 컨테이너 원소들이 갖추어야 할 사항들
5.10.2 값 의미론과 레퍼런스 의미론
5.11 STL에서의 에러 및 예외
5.11.1 에러 핸들링
5.11.2 예외 처리
5.12 STL의 확장

Chapter 6 STL 컨테이너

6.1 컨테이너의 공통적인 특징 및 동작
6.1.1 컨테이너의 공통적인 특징
6.1.2 컨테이너의 공통적인 동작
6.2 Vector
6.2.1 vector의 능력
6.2.2 vector의 동작들
6.2.3 기존의 배열처럼 vector를 사용하기
6.2.4 예외 핸들링
6.2.5 vector를 사용한 예제
6.2.6 vector 클래스
6.3 Deque
6.3.1 deque의 능력
6.3.2 deque의 동작
6.3.3 예외 핸들링
6.3.4 deque를 사용한 예제
6.4 List
6.4.1 list의 능력
6.4.2 list의 동작
6.4.3 예외 핸들링
6.4.4 list를 사용한 에제
6.5 Set과 Multiset
6.5.1 set과 multiset의 능력
6.5.2 set과 multiset의 동작
6.5.3 예외 핸들링
6.5.4 set과 multiset을 사용한 예제
6.5.5 런타임시에 정렬 기준을 결정하는 예제
6.6 Map과 Multimap
6.6.1 map과 multimap의 능력
6.6.2 map과 multimap의 동작
6.6.3 연관 배열처럼 map을 사용하기
6.6.4 예외 처리
6.6.5 map과 multimap의 예제
6.6.6 map과 스트링, 그리고 런타임 정렬 기준의 예제
6.7 다른 STL 컨테이너
6.7.1 스트링을 STL 컨테이너처럼
6.7.2 기존의 배열을 STL 컨테이너처럼
6.7.3 해쉬 테이블
6.8 "레퍼런스 의미론"의 구현
6.9 언제 어느 컨테이너를 사용할 것인가?
6.10 컨테이너의 타입과 멤버에 대한 자세한 설명
6.10.1 타입 정의
6.10.2 생성, 복사, 그리고 소멸과 관련된 동작
6.10.3 수정하지 않는 동작
6.10.4 할당
6.10.5 원소의 직접적인 액세스
6.10.6 반복자와 관련된 연산자
6.10.7 원소의 삽입과 제거
6.10.8 list의 특별한 멤버 함수들
6.10.9 할당자 지원
6.10.10 STL 컨테이너의 예외 핸들링에 대한 전반적인 사항

Chapter 7 STL 반복자

7.1 반복자의 헤더 파일
7.2 반복자 카테고리
7.2.1 입력 반복자(Input Iterators)
7.2.2 출력 반복자(Output Iterators)
7.2.3 전방향 반복자(Forward Iterators)
7.2.4 양방향 반복자(Bidirectional Iterators)
7.2.5 랜덤 액세스 반복자
7.2.6 vector 반복자의 증, 감소 문제
7.3 보조 반복자 함수
7.3.1 advance( )를 사용한 반복자의 위치 변경
7.3.2 distance( ) 함수를 이용한 반복자간의 거리 계산
7.3.3 iter_swap( )을 사용하여 반복자의 값 교체
7.4 반복자 어댑터(Iterator Adapters)
7.4.1 역방향 반복자(Reverse Iterators)
7.4.2 삽입 반복자
7.4.3 스트림 반복자
7.5 반복자 특성
7.5.1 반복자를 위한 제네릭한 함수 구현
7.5.2 사용자 정의 반복자

Chapter 8 STL 함수-객체

8.1 함수-객체의 개념
8.1.1 정렬 기준으로서의 함수-객체
8.1.2 내부 상태를 가지는 함수-객체
8.1.3 for_each( )의 반환값
8.1.4 조건자(Predicate)와 함수-객체
8.2 미리 정의된 함수-객체
8.2.1 함수 어댑터(Function Adapter)
8.2.2 멤버 함수를 위한 함수 어댑터
8.2.3 기존의 함수들을 위한 함수 어댑터
8.2.4 함수 어댑터를 위한 사용자 정의 함수-객체
8.3 조립 함수-객체
8.3.1 단항 조립 함수-객체 어댑터
8.3.2 이항 조립 함수-객체 어댑터

Chapter 9 STL 알고리즘

9.1 알고리즘 사용시 필요한 헤더 파일
9.2 알고리즘에 대한 전반적인 소개
9.2.1 알고리즘에 대한 간단한 소개
9.2.2 알고리즘의 분류
9.3 보조 함수
9.4 for_each( ) 알고리즘
9.5 원소를 수정하지 않는 알고리즘
9.5.1 원소의 카운트(Counting Elements)
9.5.2 최소·최대
9.5.3 원소의 검색
9.5.4 범위 비교
9.6 원소를 수정하는 알고리즘
9.6.1 원소의 복사
9.6.2 원소의 변경 또는 결합
9.6.3 원소의 교체
9.6.4 새로운 값의 할당
9.6.5 원소의 교체
9.7 제거 알고리즘
9.7.1 특정 값을 지닌 원소의 제거
9.7.2 중복된 원소의 제거
9.8 변경 알고리즘
9.8.1 원소의 순서를 반전
9.8.2 원소의 회전
9.8.3 원소의 순열 계산
9.8.4 원소를 뒤섞음
9.8.5 조건을 만족하는 원소를 앞쪽으로 이동하기
9.9 정렬 알고리즘
9.9.1 모든 원소의 정렬
9.9.2 부분 정렬
9.9.3 n번째 원소까지 정렬
9.9.4 힙 알고리즘
9.10 정렬된 범위 알고리즘
9.10.1 원소의 검색
9.10.2 원소의 병합
9.11 수치 알고리즘
9.11.1 결과값 처리
9.11.2 절대적인 값과 상대적인 값으로의 변경

Chapter 10 특별한 컨테이너

10.1 Stack
10.1.1 핵심 인터페이스
10.1.2 Stack을 사용한 예제
10.1.3 stack<> 클래스 세부사항
10.1.4 사용자 정의 stack 클래스
10.2 Queues
10.2.1 핵심 인터페이스
10.2.2 Queue를 사용한 예제
10.2.3 queue<> 클래스 세부사항
10.2.4 사용자 정의 queue 클래스
10.3 Priority queue
10.3.1 핵심 인터페이스
10.3.2 Priority queue를 사용한 예제
10.3.3 priority_queue<> 클래스 세부사항
10.4 Bitset
10.4.1 Bitset을 사용한 예제
10.4.2 bitset 클래스 세부사항

Chapter 11 스트링(String)

11.1 동기
11.1.1 첫 번째 예제 : 임시 파일 이름 추출하기
11.1.2 두 번째 예제 : 단어 추출과 역순 출력
11.2 스트링 클래스에 대한 설명
11.2.1 스트링 타입
11.2.2 연산자의 개요
11.2.3 생성자와 소멸자
11.2.4 스트링과 C-String
11.2.5 사이즈와 용량
11.2.6 원소의 액세스
11.2.7 비교(Comparisons)
11.2.8 수정자(Modifiers)
11.2.9 부분 문자열과 스트링 연결
11.2.10 입·출력 연산자
11.2.11 검색과 찾기
11.2.12 npos
11.2.13 스트링에 대한 반복자 지원
11.2.14 국제화
11.2.15 성능
11.2.16 스트링과 vector
11.3 스트링 클래스 세부사항
11.3.1 타입 정의와 static 값들
11.3.2 생성, 복사, 소멸 연산들
11.3.3 사이즈와 용량을 위한 연산들
11.3.4 비교
11.3.5 문자 액세스
11.3.6 C-String과 문자 배열 생성
11.3.7 수정 연산
11.3.8 검색과 찾기
11.3.9 부분 문자열과 문자열 연결
11.3.10 입·출력 함수들
11.3.11 반복자 생성
11.3.12 할당자 지원

Chapter 12 수치(Numerics)

12.1 복소수(Complex Numbers)
12.1.1 Complex 클래스 사용 예제
12.1.2 복소수 연산
12.1.3 complex<> 클래스의 세부사항
12.2 Valarrays
12.2.1 Valarrays 알아가기
12.2.2 Valarray 서브셋
12.2.3 valarray 클래스 세부사항
12.2.4 Valarray 서브셋 클래스의 세부사항
12.3 전역 수치 함수들

Chapter 13 스트림 클래스를 이용한 입력과 출력

13.1 I/O 스트림의 배경지식
13.1.1 스트림 객체
13.1.2 스트림 클래스
13.1.3 전역 스트림 객체
13.1.4 스트림 연산자들
13.1.5 조작자(Manipulators)
13.1.6 간단한 예제
13.2 기본 스트림 클래스와 객체
13.2.1 클래스와 클래스 계층 구조
13.2.2 전역 스트림 객체들
13.2.3 헤더 파일
13.3 표준 스트림 연산자 <<와 >>
13.3.1 출력 연산자 <<
13.3.2 입력 연산자 >>
13.3.3 특별한 타입들의 입·출력
13.4 스트림의 상태
13.4.1 스트림의 상태를 위한 상수들
13.4.2 스트림의 상태를 액세스하는 멤버 함수들
13.4.3 스트림 상태와 Boolean 조건
13.4.4 스트림 상태와 예외
13.5 표준 입·출력 함수
13.5.1 입력을 위한 멤버 함수
13.5.2 출력을 위한 멤버 함수
13.5.3 예제
13.6 조작자(Manipulators)
13.6.1 어떻게 조작자가 동작할까?
13.6.2 사용자 정의 조작자
13.7 형식화(Formatting)
13.7.1 형식 플래그
13.7.2 Boolean 값 형식의 입력/출력
13.7.3 필드 너비, 채움 문자, 그리고 조정
13.7.4 양의 부호(Positive Sign)와 대문자(Uppercase Letters)
13.7.5 수치 베이스(Numeric Base)
13.7.6 부동 소수 표기
13.7.7 일반적인 형식화 정의
13.8 국제화
13.9 파일 액세스
13.9.1 파일 플래그
13.9.2 임의 액세스(Random Access)
13.9.3 파일 디스크립터 사용하기
13.10 입·출력 스트림 연결
13.10.1 tie( )를 사용하는 느슨한 결합
13.10.2 스트림 버퍼를 사용하는 단단한 결합
13.10.3 리다이렉트 표준 스트림
13.10.4 읽기와 쓰기를 위한 스트림
13.11 문자열을 위한 스트림 클래스
13.11.1 문자열 스트림 클래스
13.11.2 char* 스트림 클래스
13.12 사용자 정의 타입을 위한 입·출력 연산
13.12.1 출력 연산자의 구현
13.12.2 입력 연산자의 구현
13.12.3 보조 함수를 사용하는 입력/출력
13.12.4 형식화되지 않은 함수들을 사용하는 사용자 정의 연산자
13.12.5 사용자 정의 형식 플래그
13.12.6 사용자 정의 입력/출력 연산자들을 위한 관례들
13.13 스트림 버퍼 클래스
13.13.1 스트림 버퍼들의 사용자 관점
13.13.2 스트림 버퍼 반복자
13.13.3 사용자 정의 스트림 버퍼
13.14 성능
13.14.1 C의 표준 스트림과의 동기화
13.14.2 스트림 버퍼에서의 버퍼링
13.14.3 스트림 버퍼를 직접적으로 사용하기

Chapter 14 국제화(Internationalization)

14.1 다른 문자의 인코딩
14.1.1 와이드(wide)-문자와 멀티바이트 텍스트
14.1.2 문자 특성(Character Traits)
14.1.3 특수 문자들의 국제화
14.2 로케일의 개념
14.2.1 로케일의 사용
14.2.2 로케일 패싯
14.3 로케일에 대한 세부 내용
14.4 패싯 세부사항
14.4.1 수치 형식화
14.4.2 시간과 날짜 형식화
14.4.3 화폐 형식화
14.4.4 문자 분류와 변환
14.4.5 스트링 대조
14.4.6 국제화된 메시지

Chapter 15 할당자(Allocator)

15.1 어플리케이션 개발자로서의 할당자 사용
15.2 라이브러리 개발자로서의 할당자 사용
15.3 디폴트 할당자
15.4 사용자 정의 할당자
15.5 할당자에 대한 자세한 설명
15.5.1 타입 정의
15.5.2 동작
15.6 초기화되지 않은 메모리에 대한 유틸리티 함수들

Internet Resources
Bibliography

찾아보기

저자소개

Nicolai M. Josuttis는 통신, 교통, 금융, 제조 산업 등을 위한 객체지향 소프트웨어를 설계하는 테크니컬 컨설턴트이다. 그는 C++ 표준 위원회의 library working group에서 활동하는 위원이고, 객체지향 시스템 개발을 위한 전문 그룹인 독일의 System Bauhaus의 공동 경영자이기도 하다. Josuttis는 \"Die C++-Standardbibliothek\", \"Objektorientiertes Programmieren in C++\"등을 포함한 C++ 및 객체 지향 프로그래밍에 관한 여러 가지 책을 집필하였다.

도서소개

C++ 전문서. 이 책에서는 C++을 효과적으로 사용할 수 있게 해주는 범용적인 클래스와 인터페이스를 제공한다. 각각의 라이브러리 컴포넌트에 대한 총체적인 문서뿐만 아니라, 복잡한 개념에 대한 명확한 설명을 실용적인 예제를 통해 익힐 수 있도록 했다.

《C++ STANDARD LIBRARY》는 C++와 표준 라이브러리 소개, 유틸리티와 표준 템플릿 라이브러리, STL 알고리즘, 스트림 클래스를 이용한 입력과 출력, 국제화와 할당자 등의 내용으로 구성됐다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.