이미 소장하고 있다면 판매해 보세요.
1장 C++20의 새로운 기능
- 예제 코드 - 새로운 format 라이브러리로 텍스트 서식화하기 - constexpr로 컴파일 타임에 벡터와 문자열 사용하기 - 서로 다른 타입의 정수 안전하게 비교하기 - 삼중 비교를 위해 우주선 연산자(⇔) 사용하기 - 〈version〉 헤더를 사용하여 기능 시험 매크로 쉽게 찾기 - 컨셉과 제약조건을 통해 더 안전한 템플릿 만들기 - 모듈을 사용하여 템플릿 라이브러리의 재컴파일 피하기 - 레인지를 사용하여 컨테이너에 뷰 생성하기 2장 일반적인 STL 기능 - 예제 코드 - 새로운 span 클래스를 사용하여 C 배열을 안전하게 만들기 - 구조적 바인딩을 사용하여 다수의 값 반환하기 - if와 switch문 안에서 변수 초기화하기 - 템플릿 인수 추론을 사용하여 단순성과 명확성 높이기 - if constexpr 문을 사용하여 컴파일 타임 결정 단순화하기 3장 STL 컨테이너 - STL 컨테이너 타입에 대한 빠른 개요 - 예제 코드 - 단일 제거 함수를 사용하여 컨테이너의 값 제거하기 - 정렬되지 않은 벡터에서 상수 시간으로 값 제거하기 - 벡터의 요소에 직접적이고 안전하게 접근하기 - 벡터의 요소들의 정렬 유지하기 - 맵에 요소를 효율적으로 삽입하기 - 맵 항목의 키를 효율적으로 변경하기 - unordered_map에 사용자 정의 타입의 키 사용하기 - set으로 사용자 입력을 정렬하고 필터링하기 - deque으로 단순한 RPN 계산기 만들기 - map으로 단어 빈도수 계산기 만들기 - 벡터의 벡터로 긴 문자열 찾기 - multimap으로 작업 목록 만들기 4장 호환성있는 반복자 - 반복자가 기본 - 반복자 카테고리 - 반복자 컨셉 - 예제 코드 - 반복 가능한 레인지 생성하기 - 반복자를 STL 반복자 특성과 호환되게 하기 - 반복자 어댑터를 사용하여 STL 컨테이너 채우기 - 반복자로 생성기 만들기 - 역방향 반복자 어댑터를 사용하여 역방향으로 반복하기 - 센티널을 넣어 길이를 알 수 없는 객체 반복하기 - zip 반복자 어댑터 만들기 - 임의 접근 반복자 만들기 5장 람다 표현식 - 람다 표현식 - 클로저 - 예제 코드 - 람다를 사용하여 범위가 지정된 재사용 가능한 코드 만들기 - 람다를 알고리즘 라이브러리의 서술로 사용하기 - std::function을 다형적 래퍼로 사용하기 - 재귀로 람다 접합하기 - 서술을 논리적 결합으로 합치기 - 같은 입력으로 여러 람다 호출하기 - 맵 기반 람다를 사용하여 점프 테이블 만들기 6장 STL 알고리즘 - 예제 코드 - 한 반복자에서 다른 반복자로 복사하기 - 컨테이너의 요소들을 문자열로 합치기 - std::sort로 컨테이너 정렬하기 - std::transform으로 컨테이너 변경하기 - 컨테이너에 있는 아이템 찾기 - std::clamp로 컨테이너에 있는 값 한정하기 - std::sample로 데이터 집합의 표본 추출하기 - 일련의 데이터로부터 순열 생성하기 - 정렬된 컨테이너 병합하기 7장 문자열, 스트림과 서식화 - 문자열 서식화 - 예제 코드 - string_view 클래스를 경량 문자열 객체로 사용하기 - 문자열 접합하기 - 문자열 변형하기 - C++20의 format 라이브러리로 텍스트 서식화하기 - 문자열의 공백 제거하기 - 사용자 입력으로 문자열 읽기 - 파일에 있는 단어 수 세기 - 파일 입력으로 복합 구조 초기화하기 - char_traits로 문자열 클래스 커스터마이징하기 - 정규 표현식으로 문자열 파싱하기 8장 유틸리티 클래스 - 예제 코드 - std::optional로 선택적 값 관리하기 - 타입 안정성을 위해 std::any 사용하기 - std::variant로 서로 다른 타입 저장하기 - std::chrono로 시간 이벤트 다루기 - 가변 튜플을 위한 폴드 표현식 사용하기 - std::unique_ptr로 할당된 메모리 관리하기 - std::shared_ptr로 객체 공유하기 - 공유된 객체를 위한 약한 포인터 사용하기 - 관리 객체의 멤버 공유하기 - 난수 엔진 비교하기 - 난수 분포 생성기 비교하기 9장 동시성과 병렬성 - 예제 코드 - 특정 시간 동안 슬립하기 - 동시성을 위해 std::thread 사용하기 - 동시성을 위해 std::async 사용하기 - 실행 정책에 따라 STL 알고리즘 병렬로 실행하기 - 뮤텍스와 잠금으로 데이터 안전하게 공유하기 - std::atomic으로 플래그와 값 공유하기 - std::call_once로 스레드 초기화하기 - std::condition_variable을 사용하여 생산자-소비자 문제 해결하기 - 다수의 생산자와 소비자 구현하기 10장 파일 시스템 사용하기 - 예제 코드 - path 클래스를 위한 std::formatter 특수화하기 - path를 위한 조작 함수 사용하기 - 디렉터리의 파일 나열하기 - grep 유틸리티로 디렉터리와 파일 찾기 - regex와 directory_iterator로 파일명 변경하기 - 디스크 사용량 카운터 만들기 11장 생각해볼 주제들 - 예제 코드 - 검색 제안을 위한 trie 클래스 만들기 - 두 벡터의 오차 합 계산하기 - 나만의 split 알고리즘 만들기 - 기존 알고리즘을 레버리지하는 gather 알고리즘 만들기 - 연속된 공백 제거하기 - 숫자를 단어로 변환하기 |
유동환의 다른 상품
《예제로 배우는 C++ STL》은 최신 C++20 표준을 기반으로, STL의 핵심 개념을 가장 실용적이고 체계적인 방식으로 익힐 수 있도록 구성된 책입니다.
많은 C++ 개발자들이 STL의 방대한 기능과 복잡한 문법 앞에서 어려움을 느낍니다. 특히 실무에 어떻게 적용해야 할지, 기존 방식과 어떤 점이 다른지 고민하는 분들이 많습니다. 이 책은 그런 고민을 해결하기 위해 기획되었습니다. 단순한 문법 설명을 넘어, 실제 개발 현장에서 마주치는 문제들을 중심으로 STL을 어떻게 쓰고, 왜 그렇게 써야 하는지를 다양한 예제로 풀어냅니다. 각각의 예제는 곧바로 실무에 적용 가능한 코드 레시피로 구성되어 있어, 읽는 즉시 활용할 수 있습니다. 또한 STL을 처음 접하는 독자부터 기존 C++ 방식에 익숙한 개발자, 그리고 최신 표준에 맞춰 코드를 현대화하고자 하는 숙련자까지 모든 수준의 개발자에게 실질적인 도움을 줄 수 있도록 구성했습니다. STL을 제대로 배우고 싶은 분, 모던 C++의 사고방식을 익히고 싶은 분, 실전 코드 중심의 학습을 원하는 분들에게 강력히 추천하는 책입니다. 지금 바로 《예제로 배우는 C++ STL》과 함께 STL의 세계를 정확하고 빠르게 마스터해 보세요. |