D2X | Modern C++ Core Language Features - "A C++ tutorial project focused on practical"
Goals
[Master]- Core language features of Modern C++ and their usage scenarios[Master]- The ability to identify and debug issues using compiler error messages[Familiarize]- The ability to solve unfamiliar C++ problems using documentation and cppreference[Understand]- How to participate in the technical community — using open-source projects, asking questions, joining discussions, or contributing
Quick Start
Try
Code -> Book -> Video -> X -> Code
Interactive Code Practice (Online)
click the button below to automatically complete the configuration in the cloud and enter the practice code detection mode
Interactive Code Practice (Local)
Step 1 - Install the d2x and mcpp tools
click to view xlings installation command
Linux/MacOS
curl -fsSL https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.sh | bash
Windows - PowerShell
irm https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.ps1 | iex
tips: xlings -> details
xlings install d2x mcpp -y # d2x: exercise framework CLI | mcpp: C++ build & test tool
Step 2 - Get the course, then configure and verify the environment
d2x install d2mcpp # download the course, toolchain auto-configured
cd d2mcpp
mcpp test -p solutions # verify the environment: 52 reference answers, all green
solutions/is a real mcpp package, so this compiles and runs all 52 reference answers — an unambiguous green tick that your toolchain is ready.
optional - start from the git source instead
git clone https://github.com/mcpp-community/d2mcpp.git # or your fork
cd d2mcpp
xlings install -y # toolchain pinned by .xlings.json
mcpp test -p solutions # same environment check
Tip: fork this repo and clone your fork —
git commit / pushkeeps your practice progress in your own repository.
Step 3 - Start practicing
d2x checker # practice loop: edit -> save -> auto-check -> advance
d2x status # progress overview
Prefer plain mcpp? The exercises are the tests —
mcpp testprints your whole progress table (all red until you start), andmcpp test -p src/cpp11runs a single chapter.
Community
- groups: mcpp forum
- forum: issues feedback, practice code, technical discussions
- community activities: 📣 MSCP - mcpp project learning and contributor training program
Note: Complex issues (technical, environment setup, etc.) are recommended to be posted on the forum and detailed description of the problem can be more effective in problem solving and reuse.
Contributing
- Community Communication: Report issues, participate in community discussions, and help new users solve problems.
- Project Maintenance and Development: Participate in community issue resolution, bug fixes, multilingual support, join the MSCP activity group, and develop and optimize new features and modules.
📑License & CLA
- This project welcomes free use and distribution! You may use, modify, and share the code and documentation in this project free under the Apache License 2.0 and CC-BY-NC-SA 4.0 licenses.
- If you would like to contribute code or documentation, please read the Contributor License Agreement (CLA) first.
👥Contributors