Compare commits
3 Commits
e7952b6907
...
9ccb6a3e93
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ccb6a3e93 | ||
|
|
5acb136141 | ||
|
|
d84f87751c |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
19
README.md
19
README.md
@ -50,7 +50,14 @@ This *open-access* course is directed at those who are already familiar with C a
|
|||||||
|
|
||||||
1. Move from Latex to [Typst](https://typst.app/).
|
1. Move from Latex to [Typst](https://typst.app/).
|
||||||
2. Fully-open source the material and allow direct contribution.
|
2. Fully-open source the material and allow direct contribution.
|
||||||
3. LLM-assisted editing for readability improvements.
|
|
||||||
|
## Table of Contents
|
||||||
|
|
||||||
|
- [Chapters](#chapters)
|
||||||
|
- [Topics in Details](#topics-in-details)
|
||||||
|
- [Reporting Bugs 🐛 and Contributing](#reporting-bugs--and-contributing)
|
||||||
|
- [Where the Course has been used](#where-the-course-has-been-used)
|
||||||
|
- [Author](#author)
|
||||||
|
|
||||||
## CHAPTERS
|
## CHAPTERS
|
||||||
|
|
||||||
@ -352,7 +359,7 @@ Font for coding.
|
|||||||
- **Compiler and Linker Techniques**: Optimization flags, Debugging and runtime information flags, Symbol visibility, Exceptions flags, Linker flags, Link-Time Optimization (LTO), CMake support.
|
- **Compiler and Linker Techniques**: Optimization flags, Debugging and runtime information flags, Symbol visibility, Exceptions flags, Linker flags, Link-Time Optimization (LTO), CMake support.
|
||||||
- **Coding Aspects**: Function Inlining, Function Visibility, Templates, Static Storage Duration, Linkage, Polymorphic classes, Exceptions, Header Inclusion.
|
- **Coding Aspects**: Function Inlining, Function Visibility, Templates, Static Storage Duration, Linkage, Polymorphic classes, Exceptions, Header Inclusion.
|
||||||
- **Binary Size Tools**: `nm` and `objdump`, `Bloaty`, Executable packer.
|
- **Binary Size Tools**: `nm` and `objdump`, `Bloaty`, Executable packer.
|
||||||
-
|
|
||||||
**[29. Build Time](29.Build_time.pdf)**
|
**[29. Build Time](29.Build_time.pdf)**
|
||||||
|
|
||||||
- **Compile Time Introduction**: The importance of build time, Causes of long build time.
|
- **Compile Time Introduction**: The importance of build time, Causes of long build time.
|
||||||
@ -367,10 +374,16 @@ Font for coding.
|
|||||||
- **Other Aspects**: C++20 modules, Overload resolution, other code aspects, Pointer Implementation (PIMPL), Include guard vs. `#pragma once`, Static vs. dynamic linking, Comments and formatting, External factors.
|
- **Other Aspects**: C++20 modules, Overload resolution, other code aspects, Pointer Implementation (PIMPL), Include guard vs. `#pragma once`, Static vs. dynamic linking, Comments and formatting, External factors.
|
||||||
- **Tools to Analyze Build Time**: Clang build-time analysis, `ninjatracing`, `Templight`, `Build Bench`, Visual Studio - `CompileScore`, Visual Studio - `C++ Build Insights`.
|
- **Tools to Analyze Build Time**: Clang build-time analysis, `ninjatracing`, `Templight`, `Build Bench`, Visual Studio - `CompileScore`, Visual Studio - `C++ Build Insights`.
|
||||||
|
|
||||||
### Reporting bugs 🐛 and contributing
|
## Reporting Bugs 🐛 and Contributing
|
||||||
|
|
||||||
If you find any typo, conceptual error, or section to improve, please report it using the `Issues` panel.
|
If you find any typo, conceptual error, or section to improve, please report it using the `Issues` panel.
|
||||||
|
|
||||||
|
## Where the Course has been used
|
||||||
|
|
||||||
|
The **Modern C++ Programming** course was created in 2018 and adopted by the [University of Verona](https://www.univr.it/en/university), Italy. It is taught as part of the Bachelor's and Master's degree programmes in Computer Science, for three and two years respectively. The course has also been used to train interns at NVIDIA.
|
||||||
|
|
||||||
|
*Have you adopted the course, or are you interested in using it in certain contexts?* If so, please get in touch so that I can keep track of usage. I'm also willing to share the LaTeX source code (the Tyst version will be open-sourced on GitHub soon).
|
||||||
|
|
||||||
## Author
|
## Author
|
||||||
|
|
||||||
`Federico Busato`, [federico-busato.github.io](https://federico-busato.github.io/)
|
`Federico Busato`, [federico-busato.github.io](https://federico-busato.github.io/)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user