어렵게 느껴지는 C++의 문법에 대해 단순한 기능 설명을 넘어 왜 필요한지부터 접근하여 개념에 다가간다. 또한 단지 기능을 익히는 예제가 아니라 실무에 사용되는 예를 접하게 되고 연관된 기능도 배우게 된다. 이 책을 통해 통합적인 C++의 문법 지식을 쌓아 가면 현업에 자신 있고 전문적인 소프트웨어 엔지니어로 거듭나게 될 것이다.
이 책은 C++20 규격을 기준으로 기술되었고 버전별로 추가된 사항을 나타내기 위해 해당 절에 C++14, C++17 그리고 C++20을 명시하고 있다. 개발 상황에 따라 해당 버전에 맞게 선택해서 적용하면 된다.
9.1 선언 및 정의
9.2 함수 호출
9.3 파라미터 기본값
9.4 오버로딩
9.5 람다(lambda) 함수
9.6 코루틴(since C++20)
10. 메모리 관리
10.1 메모리 매핑
10.2 new 연산자
10.3 delete 연산자
11. 모듈(since C++20)
11.1 모듈 선언 및 구현파일
11.2 import 구문
11.3 전역 모듈 조각
11.4 모듈이름
11.5 모듈 분할
11.6 모듈 : gcc 사용
12. 클래스
12.1 클래스 정의
12.2 클래스 사용
12.3 생성자
12.4 생성자의 초기화 리스트
12.5 멤버 함수 및 this 포인터
12.6 static 데이터 멤버 및 함수
12.7 소멸자
12.8 공용체
12.9 비트-필드
12.10 멤버 지칭 포인터
12.11 중첩 클래스 및 로컬 클래스
12.12 프렌드 지정자
13. 클래스 상속
13.1 클래스 확장
13.2 상속의 다형성(overriding)
13.3 추상 클래스
13.4 다중 상속
13.5 상속 : 접근 제한자
14. 연산자 오버로딩
14.1 단항 연산자 오버로딩
14.2 이항 연산자 오버로딩
14.3 new, delete 연산자 오버로딩
14.4 함수 호출 연산자 ()
14.5 첨자 연산자 []
14.6 멤버 접근 연산자 -〉
14.7 타입 변환 연산자
14.8 사용자 정의 리터럴(literal) 연산자
15. 템플릿
15.1 템플릿 파라미터
15.2 템플릿 사용
15.3 클래스 템플릿
15.4 함수 템플릿
15.5 템플릿 인자 제약 조건(since C++20)
15.6 템플릿 파라미터 팩
15.7 변수 템플릿 및 별칭 템플릿
15.8 이름 검색
성균관대 전기공학과 졸업 후 삼성전자에서 10년 넘게 전자 제품의 개발을 담당했다. 해당 제품은 내장(Embedded) 시스템을 가지고 있어서 시스템 간에 하드웨어 설계와 주변 장치의 제어 프로그램을 맡아왔다. 주요 담당 제품은 위성 또는 케이블로 영상신호를 받아 처리하는 디지털 방송기기이다. 여기서 제품에 탑재된 실시간 OS 및 리눅스 기반하에 사용자 인터페이스 관련 프로그램과 다른 애플리케이션과 중계 역할을 하는 미들웨어 소프트웨어에 관련해 일했다.
이후에 모바일 앱에 관심을 가지고 안드로이드와 iOS에 동작하는 C++로 개발하는 크로스 플랫폼을 통해 여러 유틸 앱을 개발했고 여기서 관련 기술인 데이터베이스 관리 시스템과 서버 개발 관련에도 경험이 있다. 그리고 지금은 C++ 기반인 언리얼 게임 엔진을 통해 소규모 게임 개발에 집중하고 있다.
성균관대 전기공학과 졸업 후 삼성전자에서 10년 넘게 전자 제품의 개발을 담당했다. 해당 제품은 내장(Embedded) 시스템을 가지고 있어서 시스템 간에 하드웨어 설계와 주변 장치의 제어 프로그램을 맡아왔다. 주요 담당 제품은 위성 또는 케이블로 영상신호를 받아 처리하는 디지털 방송기기이다. 여기서 제품에 탑재된 실시간 OS 및 리눅스 기반하에 사용자 인터페이스 관련 프로그램과 다른 애플리케이션과 중계 역할을 하는 미들웨어 소프트웨어에 관련해 일했다.
이후에 모바일 앱에 관심을 가지고 안드로이드와 iOS에 동작하는 C++로 개발하는 크로스 플랫폼을 통해 여러 유틸 앱을 개발했고 여기서 관련 기술인 데이터베이스 관리 시스템과 서버 개발 관련에도 경험이 있다. 그리고 지금은 C++ 기반인 언리얼 게임 엔진을 통해 소규모 게임 개발에 집중하고 있다.