👉 📚 中文 | English | Github

D2X | Modern C++ Core Language Features - "A C++ tutorial project focused on practical"

📚Book + 🎥Video + ⌨️Code + 👥X

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

Open in GitHub Codespaces

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 / push keeps 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 test prints your whole progress table (all red until you start), and mcpp test -p src/cpp11 runs a single chapter.

👉 more details...

Community

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

👥Contributors

Featured|HelloGitHub