haidn1994 / CppStudy

Cpp문법과 STL을 공부하고 정리합니다.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

C++ 공부

  1. 참고서적: Principles and Practice Using C++ - Biarne Stroustrup - 에이콘출판사
  2. 핵심 C++ 표준 라이브러리 - 라이너 그림 - 인사이트

목차 - Principle and Practice Using C++

1부: 기본 다지기

기본 다지기에서는 C++언어를 이용한 프로그래밍의 기본 개념들과 기법을 살펴보고
코드 작성을 시작하는 데 필요한 라이브러리의 기능을 알아본다.
여기에는 타입 시스템(type system)과 산술 연산, 제어 구조, 오류 처리, 설계와 구현, 함수 사용법,
사용자 정의 타입(user-defined type)등을 다룬다.

2장: Hello, World!

3장: 객체, 타입, 값

4장: 계산

5장: 오류

6장: 프로그램 작성

7장: 프로그램 완성

8장: 언어적 세부 사항: 함수 등

9장: 언어적 세부 사항: 클래스 등

2부: 입력과 출력

입력과 출력에서는 키보드나 파일로부터 문자나 숫자 입력을 받고,
그에 상응하는 출력을 모니터나 파일에 내보내는 방법을 설명한다.
그리고 수치 데이터와 텍스트, 기하학적 도형을 시각적으로 출력하고, 그래픽 사용자 인터페이스(GUI)를 바탕으로 입력을 받아들이는 방법을 살펴본다.

10장: 입출력 스트림

11장: 입출력 맞춤화

12장: 디스플레이 모델

13장: 그래픽스 클래스

14장: 그래픽스 클래스 설계

15장: 함수와 데이터의 그래프 그리기

16장: 그래픽 사용자 인터페이스

3부: 데이터와 알고리즘

데이터와 알고리즘에서는 C++표준 라이브러리에 포함된 컨테이너와 알고리즘 프레임워크인
표준 템플릿 라이브러리(STL: Standard Template Library)에 초점을 맞춘다.
컨테이너(vector, list, map등)의 사용법과 내부 구현 방식(포인터 활용, 배열, 동적 메모리, 예외, 템플릿)을 살펴본다.
그리고 표준 라이브러리의 알고리즘(sort, find, inner_product 등) 설계와 사용법을 보여준다.

17장: 벡터와 자유 영역

18장: 벡터와 배열

19장: 벡터, 템플릿, 예외

20장: 컨테이너와 반복자

21장: 알고리즘과 맵

4부: 시야 넓히기

시야 넓히기에서는 프로그래밍의 이상과 역사, 여러 가지 응용 예(행렬 계산, 텍스트 조작, 테스트, 임베디드 시스템 프로그래밍)와
C언어의 개요를 바탕으로 프로그래밍을 여러 각도에서 살펴본다.

22장: 프로그래밍의 이상과 역사

23장: 텍스트 조작

24장: 수치 계산

25장: 임베디드 시스템 프로그래밍

26장: 테스팅

27장: C프로그래밍 언어

5부

부록에서는 C++언어 자체에 대한 요약과 표준 라이브러리의 기능, 통합 개발 환경(Intergrated Development Envirment)과
그래픽 사용자 인터페이스 라이브러리 사용법 등 수업 시간에 다루기 적절하지 않은 유용한 정보를 제공한다.

부록 A 언어 요약

부록 B 표준 라이브러리 요약

부록 C 비주얼 스튜디오 시작

부록 D FLTK 설치

부록 E GUI구현

목차 - 핵심 C++ 표준 라이브러리

1장 C++ 표준 라이브러리 소개

2장 편의 수단 라이브러리

3장 모든 컨테이너에 공통인 인터페이스

4장 순차 컨테이너

5장 연관 컨테이너

6장 컨테이너 적응자

7장 반복자

8장 호출 가능 단위

9장 알고리즘

10장 수치 라이브러리

11장 문자열 라이브러리

12장 정규 표현식 라이브러리

13장 입출력 스트림 라이브러리

14장 스레드 지원 라이브러리

부록 C++ 표준 라이브러리 소개

솔루션?

해당 디렉토리를 보면 MySolution이라고 하는 디렉토리가 있는데,
이 책의 연습문제와 복습문제의 나름대로의 답변과 용어정리 복습을 담고 있다.
작성은 LaTeX으로 할까 마크다운으로 할까 고민했지만 일단 LaTeX말고 마크다운으로 작성하겠다.

About

Cpp문법과 STL을 공부하고 정리합니다.


Languages

Language:C++ 100.0%