You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+40-39Lines changed: 40 additions & 39 deletions
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,8 @@
1
-
# Modern C++ Programming #
1
+
# Modern C++ Programming
2
+
2
3
<imgsrc="other/cpp_logo.png" />
3
4
4
-
## C++11 / C++14 / C++17 / (C++20) ##
5
+
## C++11 / C++14 / C++17 / (C++20)
5
6
6
7
This *open-access* course is directed at those who are already familiar with C and object-oriented programming towards a proficiency level of C++ programming. The course covers the basics of C++ programming and moves on to advanced C++ semantics and concepts.
7
8
@@ -18,27 +19,27 @@ If you enjoy the course or you find it useful, please add a **Star**
|**1**|**[Introduction](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/01.Introduction.pdf)**| History of C/C++, Areas of Applications, Course introduction |
26
-
|**2**|**[Basic Concepts I - Fundamental Types](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/02.Basic_Concepts_I.pdf)**| Integral data types, floating-point, operators, and conversion |
27
-
|**3**|**[Basic Concepts II - Entities and Control Flow](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/03.Basic_Concepts_II.pdf)**| Enumerators, structures, control flow statements |
|**8**|**[C++ Templates and Meta-programming I](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/08.Templates_I.pdf)**| Function template, type traits |
33
-
|**9**|**[C++ Templates and Meta-programming II](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/09.Templates_II.pdf)**| Class template, SFINAE |
34
-
|**10**|**[Translation Units](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/10.Translation_Units.pdf)**| Dealing with multiple translation units and files, namespace |
35
-
|**11**|**[Code Conventions](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/11.Code_Convention.pdf)**| Project organization and main code conventions |
|**13**|**[Utilities](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/13.Utilities.pdf)**| Main `std` libraries |
38
-
|**14**|**[Containers, Iterators, and Algorithms](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/14.Iterators_Containers_Alg.pdf)**| Containers, iterators, algorithms |
39
-
|**15**|**[Advanced Topics](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/15.Advanced_Topics.pdf)**| Move semantics, error handling, C++ idioms |
40
-
|**16**|**[Optimization I](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/16.Optimization_I.pdf)**| Code optimizations, e.g. arithmetic, memory, etc. |
41
-
|**17**|**[Optimization II](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/17.Optimization_II.pdf)**| Compiler optimizations, profiling and benchmarking tools |
|**1**|**[Introduction](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/01.Introduction.pdf)**| History of C/C++, Areas of Applications, Course introduction|
27
+
|**2**|**[Basic Concepts I - Fundamental Types](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/02.Basic_Concepts_I.pdf)**| Integral data types, floating-point, operators, and conversion|
28
+
|**3**|**[Basic Concepts II - Entities and Control Flow](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/03.Basic_Concepts_II.pdf)**| Enumerators, structures, control flow statements|
|**8**|**[C++ Templates and Meta-programming I](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/08.Templates_I.pdf)**| Function template, type traits|
34
+
| **9** | **[C++ Templates and Meta-programming II](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/09.Templates_II.pdf)** | Class template, SFINAE
35
+
|**10**|**[Translation Units](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/10.Translation_Units.pdf)**| Dealing with multiple translation units and files, namespace|
36
+
|**11**|**[Code Conventions](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/11.Code_Convention.pdf)**| Project organization and main code conventions|
***Explicit Type Conversion**: `static_cast`, `const_cast`, `reinterpret_cast`, Type punning
78
79
*`sizeof` Operator
79
80
80
81
**[5. Basic Concepts IV - Functions and Preprocessing](https://github.com/federico-busato/Modern-CPP-Programming/blob/master/05.Basic_Concepts_IV.pdf)**
@@ -98,7 +99,7 @@ If you enjoy the course or you find it useful, please add a **Star**
98
99
99
100
***Polymorphism**: `virtual` methods, Virtual table, `override` keyword, `final` keyword, Common errors, Pure virtual method, Abstract class and interface
100
101
***Inheritance Casting and Run-time Type Identification**
0 commit comments