Skip to content

abcdabcd3899/Dive-Into-Modern-CPP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Github stars github language

Dive Into Modern C++: A Crash Course

The project aims to explore modern language features, standard library, design pattern, and memory management capabilities in C++. It's crucial to comprehend how black magic works. The C++ programming language keeps improving.

C++ Standard

C++ 11, C++ 14, C++ 17, and C++ 20 are used usually.

How to run the project

In ubuntu,I use the vscode to mkbuild, cmake, compile, run, rmbuild and clean the project. I write the tasks.json and launch.json files to use easily the project.

command + shift + B # select "compile" or "run" or "cmake" or "mkbuild"  tasks.json

Then select the following options:

  1. mkbuild. It will build directory for the compile and run.
  2. cmake. It will issue the Makefile.
  3. compile. It will build the project.
  4. run. It will run the some executable file in tasks.json.
  5. rmbuild. It can help you to delete the build file, which can re-generate the build files.
  6. clean. It can help clean the executable file of build directory.
F5  # debug launch.json

If you may add the different cpp files, you should add executable file in CMakeLists.txt.

Outline of Dark Magic

Language Features

Standard Library

Design Pattern and Idiom

Memory Management

Template Techniques

  • TT1 Template Specialization Code

Concepts

Coroutines

Contribute

Please open pull requests if you want to add new features.

References

  1. https://arne-mertz.de/category/cpp/modern-cpp/
  2. Effective Modern C++, by Scott Meyers
  3. C++ Crash Course: A Fast-Paced Introduction, by Josh Lospinoso
  4. C++ Template: The Completion Guide (2nd), by David Vandevoorde
  5. C++ Concurrency in Action (2nd). by Anthony Williams
  6. C++ core guidelines https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines

About

Modern C++ Programming Solutions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published