CS106L icon indicating copy to clipboard operation
CS106L copied to clipboard

🏢 Stanford University's Open-Source C++ Course CS106L delves into modern C++ language features

CS106L

image-20250613164456420

🌽 CS106L 是一门 1 学分的课程,深入探讨现代 C++ 语言。我们将涵盖 C++ 中最令人兴奋的特性(包括直至 C++26 的前沿现代编程范式),这些特性赋予了 C++ 美感与强大功能

🥕 学生需完成 8次 非常简短的每周作业。这些作业设计初衷并非刻意挑战难度,而是作为实践环节,帮助巩固前一周课堂讨论的部分概念。本课程不设考试或论文,所有成绩均以合格/不合格(S/NC)评定。

🥦 凡正在修读或已修完CS106B/X课程(或同等课程)的学生均可报名。换言之,只要您已掌握或正在学习函数、对象/类等编程基础内容,我们都诚邀您加入。

索引表

序号 章节 代码 读本 笔记 编程作业
01 Welcome N/A N/A N/A
02 Types and Structs Code Reader 类型和结构体.md
03 Initialization and References Code Reader 初始化与引用.md
04 Guest Lecture N/A N/A N/A Setup
05 Streams Code N/A 流.md
06 Containers N/A Reader 容器.md SimpleEnroll

:官方开源了部分年份(如2020)的课程录像,可自行在 B站 检索

构建方式

大部分文件夹包含若干 C++ 代码文件,位于各章节目录下,建议深入研读。每个代码文件均可编译为对应的可执行文件。请使用 CMake 构建这些可执行文件,以下一组命令应能完成所有可执行文件的构建:

$ mkdir build
$ cd build
$ cmake ..      // 调用CMake工具,去上级目录寻找CMakeLists.txt文件
$ make -j8      // 调用Make工具来执行编译,-j表示并行,8表示最多使用8个CPU核心 

执行这些命令后,生成的可执行文件将位于 build 目录中。

⚠️ 重要提示:项目中包含的部分代码示例在编译时会出现预期的错误,此设计是为了教学演示目的而特意保留的

版权说明

斯坦福大学的原始材料(slides、lecture code 等资料)保持其原有版权,本人所贡献的部分(notes、作业解答等内容)采取开放式协议,详见 许可证