Commit Graph
100 Commits
Author SHA1 Message Date
fbusato 80a700f245 Update 12.Translation_Units_I.pdf
- Remove `auto` storage class
- Add `inline static` example
2025-02-03 10:46:47 -08:00
fbusato ae54ce2047 Update 11.Templates_II.pdf
* Improve const pointer deduction slide
* fix typo in template dependent names
2025-01-30 14:36:38 -08:00
fbusato 32db0c7279 Update 10.Templates_I.pdf
* Note about function template overloading precedence
* Remove template parameter edge cases
2025-01-30 14:35:30 -08:00
fbusato 5d5c78a7a5 Update html files 2025-01-30 14:34:16 -08:00
Federico ff392ce694 Update latex encoding
Fixes #170
2025-01-19 20:20:37 -08:00
Federico a00a3769da Update 21.Advanced_Topics_II.pdf
Fixes #165
Fixes #166
Fixes #167
Fixes #168
2025-01-19 19:12:20 -08:00
Federico 3058f89090 Update 20.Advanced_Topics_I.pdf
Fixes #162
Fixes #163
Fixes #164
2025-01-19 19:11:13 -08:00
Federico 27b24c22b8 Update 19.Iterators_Containers_Alg.pdf
Fixes #153
Fixes #154
Fixes #155
Fixes #157
2025-01-18 23:49:07 -08:00
Federico f9d8ee13b9 Update 18.Utilities.pdf
Fixes #151
Fixes #152
Fixes #156
Fixes #159
2025-01-18 23:47:44 -08:00
Federico 28774d6ceb Update 20.Advanced_Topics_I.pdf
Fixes #158
2025-01-18 23:45:41 -08:00
Federico ef550dd8c8 Update 15.Code_Convention_II.pdf
Fixes #149
Fixes #150
2025-01-18 23:44:43 -08:00
Federico 7aefe1943c Update 16.Debugging.pdf
Fixes #160
Fixes #161
2025-01-18 23:43:33 -08:00
Federico f5adf0efc7 Update 12.Translation_Units_I.pdf
Fixes #145
Fixes #146
Fixes #147
Fixes #148
2025-01-18 19:44:21 -08:00
Federico 9999ec05fa Update 11.Templates_II.pdf
Fixes #143
Fixes #144
2025-01-18 19:43:08 -08:00
Federico 4cae38a271 Update 10.Templates_I.pdf
Fixes #142
2025-01-18 19:41:17 -08:00
Federico b90acc09a7 Update 19.Iterators_Containers_Alg.pdf
Fixes #130 #131
2025-01-09 23:32:09 -08:00
Federico 442fc2b9a7 Merge branch 'master' of https://github.com/federico-busato/Modern-CPP-Programming 2025-01-09 23:30:48 -08:00
Federico 34e185f6f5 Update 18.Utilities.pdf
Fixes #129
2025-01-09 23:30:23 -08:00
Federico 30cd9bfafc Update 14.Code_Convention_I.pdf
Fixes #123
2025-01-05 12:23:06 -08:00
Federico 27fbee27ed Update 12.Translation_Units_I.pdf
Fixes #122
2025-01-05 12:22:02 -08:00
Federico 37ab804233 Update 11.Templates_II.pdf
Fixes #121
2025-01-05 12:19:46 -08:00
Federico b505b4d301 Update 09.Object_Oriented_II.pdf
Fixes #119, #120
2024-12-28 23:18:02 -08:00
Federico 65bd1a567b Update 06.Basic_Concepts_IV.pdf
Fixes #117
2024-12-28 23:16:35 -08:00
Federico f4650c1149 Update 06.Basic_Concepts_IV.pdf
Fixes #116
2024-12-26 18:41:16 -08:00
Federico a8236f6733 Update 02.Preparation.pdf
Fixes #115
2024-12-26 18:40:14 -08:00
Federico 93e10a1017 Update 05.Basic_Concepts_III.pdf
Fixes #114
2024-12-26 18:39:23 -08:00
Federico cea2329900 Update 23.Optimization_II.pdf
Fixed #113
2024-12-17 22:56:12 -08:00
Federico 2bb5f82e0a Update 06.Basic_Concepts_IV.pdf and README.md
Fixes #111
2024-11-10 22:17:36 -08:00
Federico 5cec82a8f4 Release v1.8.0 2024-11-07 21:55:20 -08:00
Federico 4da0bcc6cb Update 11.Templates_II.pdf
Fixes #109
2024-10-22 15:43:23 +02:00
Federico 08c8e8fb06 Update 18.Iterators_Containers_Alg.pdf
Fixes #106
2024-08-01 22:08:23 -07:00
Federico 6e5a34f163 Merge branch 'master' of https://github.com/federico-busato/Modern-CPP-Programming 2024-05-05 23:10:48 -07:00
Federico e230d5a785 Update 04.Basic_Concepts_II and 20.Advanced_Topics_II.pdf
Fixes #100
2024-05-05 23:10:45 -07:00
Federico de8e55fd10 Merge branch 'master' of https://github.com/federico-busato/Modern-CPP-Programming 2024-04-18 22:54:31 -07:00
Federico 00f01e2c44 Update 05.Basic_Concepts_III.pdf
Fixes #95
2024-04-18 22:54:26 -07:00
Federico 4946c98e47 Update 06.Basic_Concepts_IV.pdf
Fixes #93
2024-04-14 23:11:36 -07:00
Federico 3fd98c1eba Release v1.7.0 2024-03-30 17:05:40 -07:00
Federico 2bf93294cd Update 04.Basic_Concepts_III.pdf
Fixes #87
2024-03-29 10:44:24 -07:00
Federico 51138db9ac Update 06.Basic_Concepts_V.pdf
Fixes #86
2024-03-25 20:28:35 -07:00
Federico 8d5c68e99a Update 18.Advanced_Topics_I.pdf
Fixes #81
2024-03-16 23:46:44 -07:00
Federico 1c13649a5b Update 17.Iterators_Containers_Alg.pdf
Fixes #77, #78, #79
2024-03-16 23:40:30 -07:00
Federico 6b78e33641 Update 17.Iterators_Containers_Alg.pdf
Fixes #76 #75 #74 #73
2024-03-12 15:37:51 -07:00
Federico 12ce686a05 Update 05.Basic_Concepts_IV.pdf
Fixes #69
2024-02-20 22:50:42 -08:00
Federico e5cb382d5e Update 18.Advanced_Topics_I.pdf
Fixes #68
2024-02-19 12:16:08 -08:00
Federico a9dc790369 Update 04.Basic_Concepts_III.pdf
Fixes #67
2024-02-17 15:41:48 -08:00
Federico ea0b088570 Update README.md 2024-02-07 22:28:28 -08:00
Federico 4f262ae34a Update README.md 2024-02-04 21:56:30 -08:00
Federico c5882e2d0a Merge branch 'master' of https://github.com/federico-busato/Modern-CPP-Programming 2024-02-04 00:02:43 -08:00
Federico ed5fd14bf5 Update 04.Basic_Concepts_III.pdf
Fixed #61
2024-02-04 00:02:39 -08:00
Federico 90e5148851 Update 19.Advanced_Topics_II.pdf
Fixes #59
2024-01-28 15:07:41 -08:00
Federico db113a2e3f Update 11.Translation_Units_I.pdf
Fixes #40
2023-12-24 15:42:49 -08:00
Federico 54da4a86d0 Update 09.Templates_I.pdf
Fixes #39
2023-12-24 15:33:11 -08:00
Federico 5aa657d2cd Update 09.Templates_I.pdf
Fixes #39
2023-12-23 23:07:48 -08:00
Federico d9752a4981 Update 08.Object_Oriented_II.pdf
Fixes #38
2023-12-23 00:08:58 -08:00
Federico 81dc24fdce Update 13.Code_Convention.pdf
Fixes #34
2023-12-17 15:17:47 -08:00
Federico 4fcca5c22a Update 05.Basic_Concepts_IV.pdf
Fixes #33
2023-12-14 22:32:08 -08:00
Federico 47c2c5b228 Update 08.Object_Oriented_II.pdf
Fixes #32
2023-12-14 21:58:31 -08:00
Federico b1dc558c16 Update 07.Object_Oriented_I.pdf
Fixes #30
2023-12-12 23:27:33 -08:00
Federico 0aa69c0b8c Update 02.Basic_Concepts_I.pdf
Fixes #26
2023-12-03 16:10:45 -08:00
Federico e797891cc0 Add all-in-one book
Fixes #25
2023-12-02 16:54:13 -08:00
Federico 8efcf6db2a September 2023 - Update 1 2023-09-14 16:30:21 -07:00
Federico 36fe069450 July 2023 - Update 1 2023-07-15 15:07:24 -07:00
Federico 5bd2ba637d April 2023 - Update 1 2023-04-02 18:58:07 -07:00
Federico 8e49d2378a March 2023 - Update 1 2023-03-18 16:00:53 -07:00
Federico 82651beb1c October 2022 - Update 1 2022-10-22 19:15:16 -07:00
Federico 311cc5820c June 2022 - Update 1
Soul: Extended and split "Optimization I" slides
Ecosystem:
    - added a few references
Optimization I
    - greatly improved memory hierarchy section
    - added references and applied many fixes
    - added single-Thread Performance Trend
    - rewrote Ahmdal's law section
    - removed roofline model & bitmask slide
2022-06-23 23:01:49 -07:00
Federico 14a26f2cc9 May 2022 - Update 1
Templates and Translation Units
- Flow refactoring
- Several improvements and clarifications
2022-05-21 22:25:33 -07:00
Federico 76e3861f9e April 2022 - Update 3
Translation Units (sections 1-8):
    - Refactored description flow
    - Many improvements and clarifications
    - Several typos fixed
    - const/constexpr does not imply static
    - template variables have external linkage even if specialized
2022-04-23 12:27:55 -07:00
Federico d1fbd64a62 April 2022 - Update 2 2022-04-14 08:01:50 -07:00
Federico b747c353b7 April 2022 - Update 1
Many small improvements, several typos fixed, and flow refactoring, including:
- Introduction: update references
- Basic Concepts I: average computation reference, improved catastrofic cancellation, added compensation algorithms, added C++ standards compatibility note, moving implicit promotion, reorganized floating-point section
- Basic III: parenthesis and brackets, better description for alignment in sizeof
2022-04-13 21:43:12 -07:00
fbusato 82419d0a21 Fixes #1 2022-03-08 12:39:27 -08:00
federico-busato e82865cbd6 November 2021 - Update 3
logo resize
2021-11-28 16:06:01 +01:00
federico-busato 9a84c2fba6 November 2021 - Update 2
- Introduction: small improvements
- Basic Concepts I: Pointer type conversion
- Advanced topics: added move semantic notes
- Class I: improved defaulted members section
- Optimization I: reference and aliasing
- Optimization II: added -ffast-math reference
- Translation Units/Ecosystem (cmake): system includes
2021-11-28 15:58:39 +01:00
federico-busato 212ab24d3c November - Update 1
- Basic Concepts: added a macro common error, IDE rank updated
- Ecosystem: A couple of CMake improvements, valgrind version updated
- Translation Units: static initialization order fiasco*, small namespace improvements
- Templates: std type traits
specialization
- Advanced Concepts: ref-qualified overloading, added other RVO examples
- Optimizations: Object vectorization
- README updated
2021-11-01 13:59:47 +01:00
federico-busato 9fbd8ee0a7 September 2021 Update 2
- Basic Concepts I:  Improved C++ operators, added comma and assignment operators
- Advanced Concepts: added error handling and exceptions, added undefined behavior return case
- Minor improvements for Optimization I, Basic Concepts II/III, Object Oriented Programming I
- Translation Units: reorganized and improved linkage and storage class sections
2021-09-19 18:39:53 +02:00
federico-busato 1430736394 September 2021 Update 1
- More meme
- Updated reference books
- Explict/implicit template instantiation
- Reported default stack size on Windows
- Fix wrong visualization of bookmarks
- Added library linking on Windows
- Minor fixes
2021-09-04 19:15:10 +02:00
federico-busato 4b5cf0766a - Improved defaulted default constructor description
- Added a compiler optimization example
- Valgrind vs sanitizer comparison
- Using keyword improvement
2021-08-21 17:00:51 +02:00
federico-busato 3b22f9f1b0 - Optimization I: Moore's law notes and minor improvements
- Optimization II: minor fixes
- Ecosytem: handle multiple test modes in cmake
- Translation units: make clear the relation between internal/external linkage and entity address
2021-06-11 13:07:13 +02:00
federico-busato d851dc92fd - Added prefix/postfix increment semantic
- Add Posit reference
- Added undefined behavior section
- Advanded topics improvements
- Reorganization of documentation section across ecosystem/convention
- speedscope perf visualizer
- Coverage: lcov replaced by gcovr
- Cmake reorganization
- Several fixes in Optimization I
2021-06-05 19:10:21 +02:00
federico-busato da99b032e5 typos fixing and minor improvements 2021-05-20 21:34:34 +02:00
federico-busato e7544df4db Improved PIMPL section 2021-05-20 13:12:28 +02:00
federico-busato 850f72b7a3 switch to 16:9 + minor improvements 2021-05-15 19:27:10 +02:00
federico-busato a6910fe20c Basic Concepts III: improve type punning section 2021-04-30 15:19:10 +02:00
federico-busato b7a29bd187 Translation Units: improved many examples 2021-04-24 14:48:54 +02:00
federico-busato 895b227afb Translation Units: Improved storage class 2021-04-22 21:25:20 +02:00
federico-busato cbc9d02101 Templates I/II: minor fixes 2021-04-16 18:31:28 +02:00
federico-busato 893ef775d0 Basic Concepts I: added spaceship operator
Object Oriented I: constexpr and constructors/destructor notes
Object Oriented II: RTTI examples improvement, spaceship operator overloading
Templates I: minor fixes
Optimizations I: added compressed bitmask
2021-04-11 12:53:42 +02:00
federico-busato 6e0290044b Advanced topics: refactoring RVO
Object Oriented I/II: fixes private constructors in class
Optimizations I/II:  add Moore's Law vs. algorithms
Utilities: move Algorithm section to 14.Iterators_Containers_Alg
14.Iterators_Containers_Alg: add std::span
2021-04-08 14:58:20 +02:00
federico-busato ac6bb7bf48 Basic Concepts I: Added float16 proposal, C++ Types Summary
Basic Concepts II: Reorganized Control Flow with Initializer
Basic Concepts III: Better explanation of variable/stack initialization
Object Programming I: Improved static initialization and minor fixes
2021-04-03 20:12:14 +02:00
federico-busato 2811d807d9 Moved inline function declaration and fixed minor issues 2021-03-28 15:48:00 +02:00
federico-busato 12c251fc03 Refactoring Object Oriented I and minor fixes 2021-03-27 20:07:15 +01:00
federico-busato 40a14d0ea1 Added Inheritance Casting and minor fixes 2021-03-19 19:51:45 +01:00
federico-busato f22fabdb6f typo fixing for slides 1/2/3 2021-03-12 19:25:49 +01:00
federico-busato 81e2668e52 2021 update 2021-03-04 22:54:21 +01:00
Federico Busato 2b0c1c4388 const correctness, gcc analyzer, charts update 2020-11-08 18:54:27 +01:00
Federico Busato 5029575374 std::format and refactoring 2020-10-31 19:41:24 +01:00
Federico Busato d2e4eadb3b Start C++20 topics and many small improvements 2020-10-25 12:13:59 +01:00
federico-busato 07064c12cf typos fixed in some examples 2020-05-11 13:04:30 +02:00
federico-busato b90753c457 Added another example of type trait, readability improvements 2020-05-04 13:02:37 +02:00
federico-busato 1e9c3de88b Updated parallel platforms 2020-05-02 12:40:48 +02:00