README.md
August 2, 2026 · View on GitHub
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
Caution
This project is currently in its early development stage. If you encounter any issues, feel free to create an issue for feedback or directly submit a PR to fix it.
Quick Start
Try
Code -> Book -> Video -> X -> Code
Interactive Code Practice (Online)
click the button below — the cloud environment configures itself (a few minutes on first launch), then the exercise checker starts automatically
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