차례 1장. 형식 연역 2장. auto 3장. 현대적 C++ 적응하기 4장. 똑똑한 포인터 5장. 오른값 참조, 이동 의미론, 완벽 전달 6장. 람다 표현식 7장. 동시성 API 8장. 다듬기 Item 23: std::move와 std::forward를 숙지하라 기억해 둘 사항들 - std::move는 오른값으로의 무조건 캐스팅을 수행한다. std::move 자체는 아무것도 이동하지 않는다. - std::forward는 주어진 인수가 오른값에 묶인 경우에만 그것을 오른값으로 캐스팅한다. - std::move와 std::forward 둘 다, 실행 시점에서는 아무 일도 하지 않는다. Item 24: 보편 참조와 오른값 참조를 구별하라 기억해 둘 사항들 - 함수 템플릿 매개변수의 형식이 T&& 형태이고 T가..
Effective Modern 이펙티브 모던 C++ 차례 1장. 형식 연역 2장. auto 3장. 현대적 C++ 적응하기 4장. 똑똑한 포인터 5장. 오른값 참조, 이동 의미론, 완벽 전달 6장. 람다 표현식 7장. 동시성 API 8장. 다듬기 Item 20: std::shared_ptr처럼 작동하되 대상을 잃을 수도 있는 포인터가 필요하면 std::weak_ptr를 사용하라 기억해 둘 사항들 - std::shared_ptr처럼 작동하되 대상을 잃을 수도 있는 포인터가 필요하면 std::weak_ptr를 사용하라. - std::weak_ptr의 잠재적인 용도로는 캐싱, 관찰자 목록, 그리고 std::shared_ptr 순환 고리 방지가 있다. Item 21: new를 직접 사용하는 것보다 std::mak..
Effective Modern 이펙티브 모던 C++ 차례 1장. 형식 연역 2장. auto 3장. 현대적 C++ 적응하기 4장. 똑똑한 포인터 5장. 오른값 참조, 이동 의미론, 완벽 전달 6장. 람다 표현식 7장. 동시성 API 8장. 다듬기 Item 18: 소유권 독점 자원의 관리에는 std::unique_ptr를 사용하라 기억해 둘 사항들 - std::unique_ptr는 독점 소유권 의미론을 가진 자원의 관리를 위한, 작고 빠른 이동 전용 똑똑한 포인터이다. - 기본적으로 자원 파괴는 delete를 통해 일어나나, 커스텀 삭제자를 지정할 수 도 있다. 상태 있는 삭제자나 함수 포인터를 사용하면 std::unique_ptr 객체의 크기가 커진다. - std::unique_ptr를 std::share..
Effective Modern 이펙티브 모던 C++ 차례 1장. 형식 연역 2장. auto 3장. 현대적 C++ 적응하기 4장. 스마트 포인터 5장. 오른값 참조, 이동 의미론, 완벽 전달 6장. 람다 표현식 7장. 동시성 API 8장. 다듬기 Item 15: 가능하면 항상 constexpr을 사용하라 C++11 제약 사항 - constexpr 함수는 실행 가능 문장이 많아야 하나이어야 하고, 보통의 경우 그 문장은 return 문일 수밖에 없다. - constexpr 멤버 함수는 암묵적으로 const로 선언된다. - void를 반환하는 constexpr 함수는 리터럴 형식이 아니다.C++14에서는 위의 C++11의 제약 사항이 사라짐기억해 둘 사항들 - constexpr 객체는 const이며, 컴파일 ..
Effective Modern 이펙티브 모던 C++ 차례 1장. 형식 연역 2장. auto 3장. 현대적 C++ 적응하기 4장. 스마트 포인터 5장. 오른값 참조, 이동 의미론, 완벽 전달 6장. 람다 표현식 7장. 동시성 API 8장. 다듬기 Item 11: 정의되지 않은 비공개 함수보다 삭제된 함수를 선호하라 정의되지 않은 비공개 함수(C++98)보다 삭제된 함수(C++11) 사용 시 장점1. 멤버 함수 여부에 상관없이 어떤 함수도 삭제 가능2. 원치 않는 템플릿 인스턴스화를 방지 함수를 private으로 선언하되 정의를 생략하는 C++98의 관행은 C++11의 삭제된 함수가 제공하는 기능을 억지로 흉내 내는 것이었다. C++98의 접근방식은 클래스 바깥에서는 작동하지 않으며, 클래스 안에서도 항상 ..
Effective Modern 이펙티브 모던 C++ 차례 1장. 형식 연역 2장. auto 3장. 현대적 C++ 적응하기 4장. 스마트 포인터 5장. 오른값 참조, 이동 의미론, 완벽 전달 6장. 람다 표현식 7장. 동시성 API 8장. 다듬기 Item 7: 객체 생성 시 괄호 ()와 중괄호 {}를 구분하라 기억해 둘 사항들 - 중괄호 초기화는 가장 광범위하게 적용할 수 있는 초기화 구문이며, 좁히기 변환을 방지하며, C++의 가장 성가신 구문 해석에서 자유롭다. - 생성자 중복적재 해소 과정에서 중괄호 초기화는 가능한 한 std::initializer_list 매개변수가 있는 생성자와 부합한다(심지어 겉으로 보기에 그보다 인수들에 더 잘 부합하는 생성자들이 있어도). - 괄호와 중괄호의 선택이 의미 있..
- #세미나
- #techdays2015
- #자녀교육
- 상속
- #클린코드
- #코드최적화
- Scott Meyers
- #ndc
- #제럴드와인버그
- #스콧마이어스
- #scottmeyers
- #레거시코드
- #프로그래밍심리학
- 객체 지향 설계
- #cplusplus
- #build2016
- #EffectiveModernCpp
- #mva
- #임백준
- #uwp
- #csharp
- 책
- #마이클페더스
- #팀개발
- Effective C++
- #ModernCPP
- #알고리즘
- #로버트마틴
- #cpp
- Effective Modern C++
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |