tanji.de5.net · C++ 从零开始

一份能跟完的 C++ 学习路线

12 周、6 个阶段、33 节课程和 3 个实战项目。每学一个知识点,就写一个能跑的程序。

总周期
12 周
学习阶段
6 个
课程数量
33 节
实战项目
3 个

学习路线

六个阶段,从环境搭建到项目实战

每个阶段都有明确产出,勾选课程即可记录进度。

0

环境准备与第一个程序

第 1 周 · 4 课

产出:能自己安装编译器并运行第一个 C++ 程序。

  • 认识 C++、编译器与构建过程
  • 安装 VS Code + MinGW 或 CLion
  • 第一个程序 Hello World
  • 注释、输出与常见报错
1

基础语法

第 2-3 周 · 6 课

产出:能用变量、分支和循环写出简单的交互程序。

  • 变量与基本类型(int / double / char / bool)
  • 输入输出 cin / cout
  • 运算符与表达式
  • 分支 if / else 与 switch
  • 循环 for / while / do-while
  • 综合练习:猜数字与九九乘法表
2

函数与数据

第 4-5 周 · 6 课

产出:能用函数组织代码,处理数组和字符串。

  • 函数的定义、参数与返回值
  • 作用域与变量生命周期
  • 数组与遍历
  • 字符串 string
  • 指针与引用入门
  • 综合练习:成绩统计
3

面向对象与 STL

第 6-8 周 · 6 课

产出:理解封装、继承、多态,并能使用 STL 容器写程序。

  • 类与对象、构造函数
  • 封装与访问控制
  • 继承与多态
  • STL:vector / map / set
  • 算法头文件与文件读写
  • 综合项目:学生信息管理
4

算法与刷题

第 9-10 周 · 6 课

产出:具备基本算法思维,能独立解决常见编程题。

  • 时间与空间复杂度
  • 排序:冒泡、选择、插入、sort
  • 查找:线性与二分
  • 递归与回溯入门
  • 栈、队列与链表
  • 专题刷题 10 道
5

项目实战

第 11-12 周 · 5 课

产出:完成 3 个项目,并确定后续深入方向。

  • 项目 1:命令行图书管理系统
  • 项目 2:个人记账本
  • 项目 3:控制台贪吃蛇
  • 代码规范、调试与 Git 入门
  • 方向选择:游戏 / 算法竞赛 / Qt / 嵌入式
总进度 0 / 33 课

代码示例

从第一行代码开始读

每个示例都包含完整代码和预期输出,可以复制到本地运行。

第一个程序

hello.cpp
预期输出

        

终端模拟

先学会编译,再学会运行

在模拟终端里练习 g++ 的编译与运行流程。

可用命令

  • g++ --version
  • g++ hello.cpp -o hello
  • ./hello
  • ls
  • cat hello.cpp
  • clear
  • help
tanji@cplusplus: ~
$

动手练习

补全代码,看运行结果

选择正确的代码片段,检查程序能否按预期输出。

已完成 0 / 3
challenge.cpp

随堂测验

8 道题检验基础

答完会显示正确答案和解析,最高分保存在本机。

1 / 8 得分 0

学习计划

12 周节奏表

每周一个主题,用最小产出检验学习效果。

周次主题本周产出
第 1 周环境与第一个程序能运行 hello.cpp
第 2 周变量、类型与输入输出能写整数计算器
第 3 周分支与循环能写猜数字游戏
第 4 周函数能把代码拆成函数
第 5 周数组与字符串能处理成绩表
第 6 周指针与引用理解内存与传参
第 7 周类与对象能设计一个类
第 8 周STL 与文件能用 vector 和文件保存数据
第 9 周算法基础理解复杂度、排序与二分
第 10 周刷题强化独立完成 10 道题
第 11 周项目一、二图书管理与记账本
第 12 周项目三与方向贪吃蛇与下一步规划

资源推荐

文档、题库与经典书

路线学完后,用这些资源继续深入。

cppreference

C++ 权威参考文档,查语法和标准库首选。

LearnCpp

系统英文教程,覆盖从基础到进阶。

洛谷

中文刷题社区,适合算法入门。

LeetCode

算法题库,用来做专题训练。

《C++ Primer》

系统打基础,适合作为第一本教材。

《STL 源码剖析》

理解容器底层,适合进阶阶段。

《Effective C++》

写规范 C++ 的经验清单,适合第二遍阅读。

《算法竞赛入门经典》

从编程到算法的过渡教材。