상세정보
미리보기
C++ 기본에서 상급까지 : 전문가로 인도하는 C++ 지침서
- 저자
- 이재국 저
- 출판사
- 좋은땅
- 출판일
- 2024-03-21
- 등록일
- 2024-04-30
- 파일포맷
- PDF
- 파일크기
- 5MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
▶ 이 책은 C++20 규격을 기준으로 기술됨.
▶ 버전별로 추가된 사항을 나타내기 위해 해당 절에 C++14, C++17 그리고 C++20을 명시하고 있음.
▶ 개발 상황에 따라 해당 버전에 맞게 적용 가능함.
▶ 주요 내용
?배열과 포인터 관계 ?함수 및 코루틴 함수
?메모리 관리 ?모듈(MSVC 및 gcc)
?클래스 상속 ?연산자 오버로딩
?템플릿 사용 ?템플릿 제약조건
?템플릿 파라미터 팩 ?스탠더드 라이브러리: 콘셉트 및 레인지
규격에서는 메모리와 객체와 연결시켜서 객체(Object)의 의미를 일정의 메모리를 차지하는 것으로 정의한다. 일정의 메모리가 확정되기 위해서는 크기가 정해져야 되는데 이것은 타입을 통해서 결정되고 타입(Type)은 객체의 주요 특징이 된다.
- 1.2 변수 본문 중에서
포인터는 주소 저장과 아울러 중요한 기능을 하나 더 가지고 있는데 저장된 주소에 접근하여 해당 값을 가져올 수 있다. 이런 특징이 포인터의 핵심요소이다. 주소저장과 주소참조의 두 가지 특성…
- 7.2 포인터 본문 중에서
함수가 가지는 의미를 달리 이야기해 보면 함수는 일정 기능을 수행하는 것을 하나의 단위로 만들어 결과를 만들어 내는 정형화 특성을 가진다. 그리고 함수 본체에서 연산 작업이 있는 경우에 함수의 파라미터를 사용해 일반화 특징도 갖는다.
- 9.1 선언 및 정의 본문 중에서
클래스(class)는 기본 타입과 달리 사용자 정의형 타입이다. 또한 구조체(struct)와 공용체(union)도 클래스와 같이 사용자 정의 타입이 된다. 이런 신규 타입들은 접근 제어 등 일부 다른 점이 있을 뿐 사용 방식에 차이가 거의 없다.
- 12. 클래스 본문 중에서
저자소개
성균관대 전기공학과 졸업 후 삼성전자에서 10년 넘게 전자 제품의 개발을 담당했다. 해당 제품은 내장(Embedded) 시스템을 가지고 있어서 시스템 간에 하드웨어 설계와 주변 장치의 제어 프로그램을 맡아왔다. 주요 담당 제품은 위성 또는 케이블로 영상신호를 받아 처리하는 디지털 방송기기이다. 여기서 제품에 탑재된 실시간 OS 및 리눅스 기반하에 사용자 인터페이스 관련 프로그램과 다른 애플리케이션과 중계 역할을 하는 미들웨어 소프트웨어에 관련해 일했다.
이후에 모바일 앱에 관심을 가지고 안드로이드와 iOS에 동작하는 C++로 개발하는 크로스 플랫폼을 통해 여러 유틸 앱을 개발했고 여기서 관련 기술인 데이터베이스 관리 시스템과 서버 개발 관련에도 경험이 있다. 그리고 지금은 C++ 기반인 언리얼 게임 엔진을 통해 소규모 게임 개발에 집중하고 있다.
목차
서문 4
일러두기 5
1. C++ 소개11
1.1 기본사항14
1.2 변수21
1.3 네임스페이스26
2. 연산식35
2.1 후위식 연산38
2.2 단항 연산자48
2.3 이항 연산자51
2.4 삼항 연산자55
3. 조건문 및 반복문57
3.1 조건문58
3.2 반복문61
4. 전처리 지시문65
4.1 조건 지시문66
4.2 대체 지시문68
4.3 파일 포함 지시문72
5. 여러 지정자들77
5.1 스토리지 지정자78
5.2 별칭 지정자85
5.3 inline 지정자87
5.4 constexpr, consteval, constinit 지정자90
5.5 타입 지정자96
6. 열거형 타입103
7. 배열, 포인터, 참조형 타입109
7.1 배열110
7.2 포인터113
7.3 참조형 타입135
8. 변수 초기화141
8.1 기본 및 값 초기화143
8.2 배열 형태의 초기화145
9. 함수151
9.1 선언 및 정의152
9.2 함수 호출157
9.3 파라미터 기본값159
9.4 오버로딩161
9.5 람다(lambda) 함수164
9.6 코루틴 (since C++20)172
10. 메모리 관리199
10.1 메모리 매핑200
10.2 new 연산자205
10.3 delete 연산자209
11. 모듈 (since C++20)211
11.1 모듈 선언 및 구현파일213
11.2 import 구문216
11.3 전역 모듈 조각219
11.4 모듈이름219
11.5 모듈 분할220
11.6 모듈 : gcc 사용221
12. 클래스227
12.1 클래스 정의228
12.2 클래스 사용234
12.3 생성자237
12.4 생성자의 초기화 리스트249
12.5 멤버 함수 및 this 포인터253
12.6 static 데이터 멤버 및 함수260
12.7 소멸자262
12.8 공용체264
12.9 비트-필드268
12.10 멤버 지칭 포인터270
12.11 중첩 클래스 및 로컬 클래스273
12.12 프렌드 지정자274
13. 클래스 상속279
13.1 클래스 확장280
13.2 상속의 다형성 : 오버라이딩(overriding)287
13.3 추상 클래스301
13.4 다중 상속303
13.5 상속 : 접근 제한자308
14. 연산자 오버로딩315
14.1 단항 연산자 오버로딩317
14.2 이항 연산자 오버로딩320
14.3 new, delete 연산자 오버로딩329
14.4 함수 호출 연산자 ()330
14.5 첨자 연산자 [ ]332
14.6 멤버 접근 연산자 ->333
14.7 타입 변환 연산자336
14.8 사용자 정의 리터럴(literal) 연산자337
15. 템플릿339
15.1 템플릿 파라미터340
15.2 템플릿 사용344
15.3 클래스 템플릿352
15.4 함수 템플릿371
15.5 템플릿 인자 제약 조건 (since C++20)381
15.6 템플릿 파라미터 팩395
15.7 변수 템플릿 및 별칭 템플릿406
15.8 이름 검색408
16. 예외 처리413
16.1 try 블록414
16.2 throw 수식416
16.3 예외 처리 지정자421
17. 스탠더드 템플릿 라이브러리423
17.1 반복자(Iterators library)425
17.2 문자열(Strings library)444
17.3 컨테이너(Containers library)453
17.4 콘셉트(Concepts library) (since C++20)471
17.5 레인지(Ranges library) (since C++20)478
참고자료 507
찾아보기 509