
| Serial Number | Knowledge Map | Historical Questions (Free Q&A) |
|---|---|---|
| 1 | New Features | One Minute Explanation: C++ New Feature string_view |
| 2 | Library Compilation and Linking | How to Change Tires on a Fast-Moving Car (Implementing a Scalable C++ Service) |
| 3 | STL | Traits Technique |
| 4 | New Features | if constexpr |
| 5 | New Features | Interview Question: Is shared_ptr Thread-Safe in C++? |
| 6 | Templates | C++17 New Feature std::optional |
| 7 | Class | Can Member Functions of C++ Classes Be Used as Thread Parameters? |
| 8 | Compiler | How to Ensure const Remains Unchanged |
| 9 | Value Semantics | An Interview Question on Deep Copy Constructor Issues |
| 10 | Value Semantics | What Do Smart Pointers Actually Test? |
| 11 | Pointers | Pitfalls Encountered When Using C++ Smart Pointers |
In 2023, while participating in the Tsinghua OS free training camp, I learned about the best way to get started with Rust in a week. I wondered if there was a similar method for C++. Today, I finally found it, comparing these two projects.
https://github.com/CppTrainingHub/training-cpp

https://github.com/rust-lang-cn/rustlings-cn

🦀 Introduction to Rustlings
Rustlings is an interactive exercise system designed for Rust beginners, helping users grasp the core concepts of Rust through small coding challenges. Here is the structured core information:
Project: https://github.com/rust-lang-cn/rustlings-cn
🎯 Core Features
| Feature | Description |
|---|---|
| 1. Progressive Learning Path | • Exercises are graded by difficulty: from basic syntax (variables/types) → advanced topics (ownership/lifetimes) • Includes 100+ targeted exercises organized by thematic modules |
| 2. Instant Feedback Mechanism | • Real-time compilation checks for code errors via <span>rustlings watch</span> • <span>rustlings hint <exercise name></span> provides targeted solution hints |
| 3. Comprehensive Coverage | • Data Types: Structs, Enums, Collections (<span>Vec</span>/<span>HashMap</span>) • Core Concepts: Ownership, Borrowing Checks, Pattern Matching • Error Handling: Practical exercises with <span>Option</span> and <span>Result</span> • Advanced Features: Iterators, Smart Pointers, Basics of Concurrency |
| 4. Chinese Support | • Official Chinese repository: rustlings-cn • All exercise descriptions and error messages are in Chinese |
⚙️ Installation and Usage
# 1. Install Rust Environment (including Cargo)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# 2. Install Rustlings
cargo install --git https://github.com/rust-lang-cn/rustlings-cn
# 3. Initialize Exercise Directory
rustlings init
# 4. Start Learning Monitor (automatically detects code changes)
rustlings watch
Operation Example:
# View Exercise List
rustlings list
# Try to complete the "variables" exercise
code exercises/variables1.rs
# Get a hint (when stuck)
rustlings hint variables1
C++ Training Hub
In simple terms, C++ Training Hub is a dedicated place for practicing C++. It contains 79 exercises, covering everything from the basic Hello World to C++20 coroutines, essentially encompassing all that needs to be learned in C++.
It is not a tutorial for rote memorization, but a platform that truly encourages you to write code. Each problem can be run, and you will know immediately if you made a mistake.
🎯 Core Highlights
1. Clear Learning Path
Layered progressive design for a seamless learning experience
•Beginner (Questions 0-19): Friendly for zero-based learners, covering basic syntax<span>Hello World</span> → Variables → Functions → Classes•Intermediate (Questions 20-39): Deepening core skillsTemplates → STL Containers → Smart Pointers•Advanced (Questions 40-65): Enhancing practical abilitiesOperator Overloading → Multithreading•Latest Features (Questions 66-79): Mastering cutting-edge technologiesC++17/20 Coroutines → Concepts
Goal: From beginner to expert, eliminating knowledge gaps
2. Hands-On Practice Driven
Writing code > Watching tutorials, instant feedback reinforces understanding
•Real coding experience•<span>TODO</span> comments clearly define task objectives•Automatic checks (ASSERT mechanism) for real-time error correction•Multidimensional Learning Support•Links to Chinese and English documentation for reference•Thought-provoking questions (e.g., “Why write it this way?”) deepen logic•Minimal Environment Setup
Team Learning
[Job Seeking] Don’t overthink it — just go for the interview
1️⃣ If you have more questions, contact Xiao Wang for discussion and improvement
call me
2️⃣ Follow the public account: Backend Development Growth Guide (reply “Interview Experience” to get) Access all my past interview recordings and interview reviews.
Look Up: Walk the Dark Path, Cultivate Thin Fields, Enter the Narrow Gate, See the Dim Light
•Do not assume this: Just because others have completed it, you can too. Everyone is in a group, in a company, with different roles. This is a lazy attitude, an avoidance of problems.•Others do not assume this; at least this month’s performance will not be written as yours, and at least promotion is not yours, layoffs will be yours.•Goal: To cross the last hurdle, earn a million annual salary, and enter a big company.
Look Down: Focus on Doing One Small Thing Well at a Time
•If you cannot sweep a room, how can you sweep the world?•Let yourself sleep early, wake up early, exercise, maintain personal hygiene, drink more water, express clearly, and do basic things well. Recent Plans

