Difference between r1.122 and the current
@@ -7,11 +7,12 @@
* ~~느리지만~~ 날카롭게 C++을 공부해봅시다!
== 진행 ==
== 참가자 ==
* [신형철], [한재현], [정우현], [김민하], [송정우], [이은서]
== 진행 ==
* ppt 파일을 통해 진행합니다.
* 매주 화요일 오후 8시 ~ 오후 10시에 진행합니다.
* 진행 상황에 따라 연장해서 진행될 수도 있습니다.
* 2019년 여름방학 한정으로 매주 화요일 오후 6시부터 진행됩니다.
* C언어와 겹치는 부분은 상황에 따라 생략될 수도 있습니다.
* ~~ppt 파일을 통해 진행합니다.~~
* ~~매주 화요일 오후 8시 ~ 오후 10시에 진행합니다.~~
* ~~진행 상황에 따라 연장해서 진행될 수도 있습니다.~~
* ~~2019년 여름방학 한정으로 매주 화요일 오후 6시부터 진행됩니다.~~
* ~~C언어와 겹치는 부분은 상황에 따라 생략될 수도 있습니다.~~
* 현재는 사정상 오프라인으로 진행하지 않고, 온라인으로 자료 공유 + 자유롭게 질답하는 방법으로 진행하고 있습니다.
== 참가자 ==
* [신형철], [한재현], [정우현], [김민하], [송정우], [이은서]
@@ -229,11 +230,19 @@
* Pure Virtual Function
* Dynamic Binding
* 38. Inheritance Accessibility
* 40. Quiz & Answer (32 ~ 39)
* 41. Templates
== 진행 ==
* 2019.01.14
* Dynamic Binding
* 38. Inheritance Accessibility
* Inherited Member Visibility
* Inheritance & Scope
* 39. Inheritance Copy Control & Polymorphic Container * Inheritance & Copy Control
* Constructor Inheritance
* Inheritance & STL Container
=== Part 5. C++ as Generic Programming Language ===* 41. Templates
* Generic Programming
* Function Template
* Class Template
* Template Compilation
* 42. Template Argument & Deduction
== 진행 ==
* 2019.01.14
@@ -327,7 +336,6 @@
* Chapter 37.1 ~ Chapter 37.2까지 진행.
* 2019.11.19
* 휴강!
* 2019.11.26
* 2019.11.19
* 휴강!
1. 개요 ¶
- Sharpest에서 이어지는 후속 C++ 스터디.
- 스터디 내부에서 C++에 대한 수요가 있어서, 전환해서 진행하게 되었습니다.
- 스터디 내부에서 C++에 대한 수요가 있어서, 전환해서 진행하게 되었습니다.
- 제목에 오타가 있지만, 뭔가 그럴싸해서 유지하기로 결정했습니다.
느리지만날카롭게 C++을 공부해봅시다!
2. 진행 ¶
ppt 파일을 통해 진행합니다.
매주 화요일 오후 8시 ~ 오후 10시에 진행합니다.
진행 상황에 따라 연장해서 진행될 수도 있습니다.
2019년 여름방학 한정으로 매주 화요일 오후 6시부터 진행됩니다.
C언어와 겹치는 부분은 상황에 따라 생략될 수도 있습니다.
- 현재는 사정상 오프라인으로 진행하지 않고, 온라인으로 자료 공유 + 자유롭게 질답하는 방법으로 진행하고 있습니다.
4. 목표 ¶
- C++ 언어의 문법을 공부합니다.
- 언뜻 지나치기 쉬웠던 부분, 코드 작성 시 함정을 피하는 방법을 공부합니다.
- 상황에 따른 언어 사용 전략, 수행 원리 등을 공부합니다.
5.1. Part 1. C++ as C extension ¶
- 1. Introduction
- C++에 대한 간략한 소개
- Hello, World!
- C++에 대한 간략한 소개
- 2. Basic Statement
- 주석
- 제어문
- 주석
- 3. Primitive Types
- Primitive Types
- Primitive Type 간 변환
- 상수 정의
- Primitive Types
- 4. Compound Types
- 참조자
- 포인터
- 참조자 vs 포인터
- 참조자
- 5. Const & Constexpr
- const
- constexpr
- static_assert
- const
- 6. Array
- 배열
- 배열과 포인터
- C 타입 문자열
- 다차원 배열
- 퀴즈
- 배열
- 7. Type Aliasing & Type Deduction
- Type aliasing
- Type deduction
- Type aliasing
- 8. Expression
- lvalue & rvalue
- Evaluation
- Arithmetic operation
- Logical/Relational operation
- Other operations
- sizeof
- Alignment
- Casting
- lvalue & rvalue
- 9. Variable & Function
- Lifetime
- Linkage
- Function frame
- Parameter
- Return
- Optimization
- Argument
- Lifetime
- 10. Overload & Resolution
- Function overload
- Mangling
- Resolution
- Function overload
- 11. Function pointer & Assertion
- Function pointer
- Assertion
- Debugging
- Function pointer
- 12. Inline & Constexpr specifier
- Inline
- Constexpr
- Inline
- 13. Quiz & Answer (1~12)
- Quiz
- Quiz
5.2. Part 2. C++ as OOP Language (1) ¶
- 14. Class
- Class
- Encapsulation
- Class
- 15. Basic Constructors
- Class Constructor
- Synthesis Constructor
- Delegating Constructor
- Converting Constructor
- Class Constructor
- 16. Accessibility
- Access
- Friend
- Class Scope
- Access
- 17. Members & Declaration
- Instance Members
- Forward Declaration
- Constness
- Static Members
- Instance Members
- 18. Special Classes
- Aggregate Class
- POD Type
- Trivial Class
- Standard Layout
- Constexpr Class
- Aggregate Class
- 19. Initialization
- Initialization
- Default Initialization
- Value Initialization
- Zero Initialization
- Direct Initialization
- Copy Initialization
- List Initialization
- Aggregate Initialization
- Reference Initialization
- Initialization
- 20. Non-Local Initialization
- Non-Local Initialization
- Static Initialization
- Dynamic Initialization
- Non-Local Initialization
- 21. Quiz & Answer (14 ~ 20)
- Quiz
- Quiz
5.3. Part 3. C++ through Library (1) ¶
- 22. Stream
- I/O Classes
- I/O States
- File I/O
- String I/O
- I/O Classes
- 23. Formatted & Non-Formatted I/O
- Manipulators
- Non-Formatted I/O
- Manipulators
- 24. Sequential Containers
- Sequential Containers
- Iterator
- Operations
- Insertion
- Access
- Deletion
- Resize
- Container-Specific Operations
- Vector Growth
- Invalidation
- Sequential Containers
- 25. String
- Creation
- Modification
- Search
- Comparison
- Numeric String
- Other String
- Creation
- 26. String View & Conversion
- String View
- View Operations
- Pitfalls
- Conversion
- String View
- 27. Container Adaptor
- Adaptor
- Stack
- Queue
- Complexity
- Adaptor
- 28. Associative Containers
- Association
- Pair
- Structured Binding
- Operations
- Unordered Container
- Invalidation
- Complexity
- Association
- 29. Callable Elements
- Callable
- Lambda Expression
- Function Binding
- Callable Wrapping
- Functors
- Callable
- 30. Algorithms & Special Iterators
- Algorithm
- Categorization
- Customization
- Special Iterators
- Iterator Categories
- Container-Specialized Algorithms
- Algorithm
- 31. Quiz & Answer (22 ~ 30)
- Quiz
- Quiz
5.4. Part 4. C++ as OOP Language (2) ¶
- 32. Memory Allocation
- Dynamic Memory
- New & Delete
- Dynamic Array
- Allocator
- Dynamic Memory
- 33. Smart Pointers
- Overview
- Shared Pointer
- Unique Pointer
- Weak Pointer
- Dynamic Array + Smart Pointer
- Overview
- 34. Copy Control
- Copy Control
- Copy Constructor
- Copy & Initialization
- Copy Assignment
- Destructor
- Rule of Three/Five
- Default & Delete
- Swap
- Copy Control
- 35. Move Semantics
- R-value Reference
- Move Constructor
- Move Assignment
- Synthesized Move Operator
- Move Iterator
- Move Operation And DRY
- Reference Qualifier
- R-value Reference
- 36. Operator Overloading
- Overloading For Operators
- Operator Examples
- Functor
- Callable And Function<T>
- Conversion Operator
- Overloading For Operators
- 37. Object-Oriented Programming
- Object-Oriented Programming
- Base/Derived Classes
- Derived-To-Base Conversion
- Base-To-Derived Conversion
- Static In Inheritance
- Virtual Function
- Pure Virtual Function
- Dynamic Binding
- Object-Oriented Programming
- 38. Inheritance Accessibility
- Inherited Member Visibility
- Inheritance & Scope
- Inherited Member Visibility
- 39. Inheritance Copy Control & Polymorphic Container
- Inheritance & Copy Control
- Constructor Inheritance
- Inheritance & STL Container
- Inheritance & Copy Control
5.5. Part 5. C++ as Generic Programming Language ¶
- 41. Templates
- Generic Programming
- Function Template
- Class Template
- Template Compilation
- Generic Programming
- 42. Template Argument & Deduction
6. 진행 ¶
- 2019.01.14
- Chapter 1 ~ Chapter 3.2까지 진행.
- Chapter 1 ~ Chapter 3.2까지 진행.
- 2019.01.22
- Chapter 3.3 ~ Chapter 5까지 진행.
- Chapter 3.3 ~ Chapter 5까지 진행.
- 2019.01.29
- Chapter 6 ~ Chapter 7까지 진행.
- Chapter 6 ~ Chapter 7까지 진행.
- 2019.02.12
- Chapter 8.1 ~ Chapter 8.5까지 진행.
- Chapter 8.1 ~ Chapter 8.5까지 진행.
- 2019.02.21
- Chapter 8.6 ~ Chapter 9.1까지 진행.
- Chapter 8.6 ~ Chapter 9.1까지 진행.
- 2019.02.25
- Chapter 9.1 리뷰.
- Chapter 9.2 ~ Chapter 9.5까지 진행.
- Chapter 9.1 리뷰.
- 2019.03.05
- Chapter 9.6 ~ Chapter 10.1까지 진행.
- Chapter 9.6 ~ Chapter 10.1까지 진행.
- 2019.03.12
- Chapter 10.2 ~ Chapter 11.1까지 진행.
- Chapter 10.2 ~ Chapter 11.1까지 진행.
- 2019.03.19
- Chapter 13. Q1 ~ Q24 퀴즈 진행 및 풀이.
- Chapter 13. Q1 ~ Q24 퀴즈 진행 및 풀이.
- 2019.03.26
- Chapter 11.1 ~ Chapter 12.1까지 진행.
- Chapter 11.1 ~ Chapter 12.1까지 진행.
- 2019.04.02
- Chapter 11.1 ~ Chapter 12.1까지 리뷰.
- Chapter 12.2 진행. (Part 1 종료!)
- Chapter 14.1 ~ Chapter 14.2까지 진행.
- Chapter 11.1 ~ Chapter 12.1까지 리뷰.
- 2019.04.09
- Chapter 13. Q25 ~ Q65 퀴즈 진행 및 풀이.
- Chapter 13. Q25 ~ Q65 퀴즈 진행 및 풀이.
- 2019.04.16 / 2019.04.23
- 중간고사 관계로 쉬어갑니다!
- 중간고사 관계로 쉬어갑니다!
- 2019.04.30
- Chapter 15.1 ~ Chapter 16.3까지 진행.
- Chapter 15.1 ~ Chapter 16.3까지 진행.
- 2019.05.07
- Chapter 17.1 ~ 17.4까지 진행.
- Chapter 17.1 ~ 17.4까지 진행.
- 2019.05.14
- Chapter 17.1 ~ 17.4까지 리뷰.
- Chapter 18.1 ~ 18.2까지 진행.
- Chapter 17.1 ~ 17.4까지 리뷰.
- 2019.05.21
- Chapter 18.3 ~ Chapter 19.4까지 진행.
- Chapter 18.3 ~ Chapter 19.4까지 진행.
- 2019.05.28
- Chapter 19.1 ~ 19.4까지 리뷰.
- Chapter 19.5 ~ 19.9까지 진행.
- Chapter 19.1 ~ 19.4까지 리뷰.
- 2019.06.04
- Chapter 20.1 ~ 20.3까지 진행.
- Chapter 22.1 ~ 22.4까지 진행.
- Chapter 20.1 ~ 20.3까지 진행.
- 2019.06.11 / 2019.06.18
- 기말고사 관계로 쉬어갑니다!
- 기말고사 관계로 쉬어갑니다!
- 2019.06.25
- 데블스캠프2019 관계로 휴강!
- 데블스캠프2019 관계로 휴강!
- 2019.07.02
- Chapter 23.1 ~ 23.2까지 진행.
- Chapter 23.1 ~ 23.2까지 진행.
- 2019.07.09
- Chapter 24.1 ~ Chapter 24.3까지 진행.
- Chapter 24.1 ~ Chapter 24.3까지 진행.
- 2019.07.16
- Chapter 24.4 ~ 24.10까지 진행.
- Chapter 24.4 ~ 24.10까지 진행.
- 2019.07.23
- Chapter 25.1 ~ 25.6까지 진행.
- Chapter 25.1 ~ 25.6까지 진행.
- 2019.07.30
- Chapter 26.1 ~ 26.4까지 진행.
- Chapter 26.1 ~ 26.4까지 진행.
- 2019.08.08
- Chapter 27.1 ~ 27.4까지 진행.
- Chapter 27.1 ~ 27.4까지 진행.
- 2019.08.13
- Chapter 28.1 ~ 28.4까지 진행.
- Chapter 28.1 ~ 28.4까지 진행.
- 2019.08.22
- Chapter 28.5 ~ 28.7까지 진행.
- Chapter 29.1 ~ Chapter 29.2까지 진행.
- Chapter 28.5 ~ 28.7까지 진행.
- 2019.08.29
- Chapter 29.2 ~ Chapter 29.4까지 진행.
- Chapter 29.2 ~ Chapter 29.4까지 진행.
- 2019.09.05
- Chapter 29.4 ~ Chapter 29.5까지 진행.
- Chapter 30.1 ~ Chapter 30.4까지 진행.
- Chapter 29.4 ~ Chapter 29.5까지 진행.
- 2019.09.10
- Chapter 31. Q1 ~ Q36 퀴즈 진행 및 풀이.
- Chapter 31. Q1 ~ Q36 퀴즈 진행 및 풀이.
- 2019.09.17
- Chapter 32.1 ~ Chapter 32.4까지 진행.
- Chapter 32.1 ~ Chapter 32.4까지 진행.
- 2019.09.24
- Chapter 33.1 ~ Chapter 33.5까지 진행.
- Chapter 34.1 ~ Chapter 34.1까지 진행.
- Chapter 33.1 ~ Chapter 33.5까지 진행.
- 2019.10.01
- Chapter 34.2 ~ Chapter 34.8까지 진행.
- Chapter 34.2 ~ Chapter 34.8까지 진행.
- 2019.10.08
- Chapter 35.1 ~ Chapter 35.3까지 진행.
- Chapter 35.1 ~ Chapter 35.3까지 진행.
- 2019.10.29
- Chapter 35.4 ~ Chapter 35.7까지 진행.
- Chapter 36.1 ~ Chapter 36.2까지 진행.
- Chapter 35.4 ~ Chapter 35.7까지 진행.
- 2019.11.05
- Chapter 36.2 ~ Chapter 36.4까지 진행.
- Chapter 36.2 ~ Chapter 36.4까지 진행.
- 2019.11.12
- Chapter 36.5 ~ Chapter 36.5까지 진행.
- Chapter 37.1 ~ Chapter 37.2까지 진행.
- Chapter 36.5 ~ Chapter 36.5까지 진행.
- 2019.11.19
- 휴강!
- 휴강!