自动驾驶系统不是单纯的算法堆叠,而是对实时性、内存安全和硬件交互要求极高的工程领域。很多初学者卡在“会用 Python 调包,却看不懂底层 C++ 代码”,导致无法真正理解感知模块的数据流转或控制算法的底层逻辑。这门课直击这个痛点,它不把你当空白页教语法,而是以“面向自动驾驶的工程实践”为锚点,带你把 C++ 从“能写出来”提升到“写得对、写得稳、能跑在车规级芯片上”。
**适合谁看:不是零基础,而是“语法及格但工程未开窍”的人**
如果你连 `int a = 5;` 和变量声明是什么都没概念,这课会劝退你。它预设你至少学过一门编程语言(C 或 Python),理解什么是变量、循环和函数。但如果你曾在面试中被问“指针和引用的区别”、“为什么 `std::shared_ptr` 在某些场景下比 `std::unique_ptr` 危险”,或者你看过 ROS 包却卡在编译报错、内存泄漏排查上,这门课就是为你准备的。它专门针对从“脚本思维”转向“系统思维”的转岗者,以及希望查漏补缺的在校生。
**建议先看:第 1 章大纲与第 2 章基础语法精析**
别跳太快。第 1 章里“不同编程语言比较”和“如何有效学习 C++”两节看似理论,实则是建立认知框架:为什么自动驾驶选 C++ 而不是 Java 或 Python?这里的“有效学习”不是背 STL,而是理解 C++ 在嵌入式与实时系统中的边界。紧接着,重点吃透第 2 章的“基本输入输出流”和“命名空间”。在自动驾驶项目中,大量的日志打印、传感器数据序列化都依赖高效的 I/O 流操作;而命名空间在大型代码库中用于隔离模块(如将感知模块的 `Filter` 与控制模块的 `Filter` 区分开),这是读懂开源代码库(如 Apollo、Autoware)的第一道门槛。
**学完能独立做什么,以及资料怎么配合**
学完前几章,你应能独立完成以下三件事:第一,读懂一个中等复杂度的 C++ 类,识别出其中潜在的内存管理陷阱(如析构顺序、拷贝构造缺失);第二,使用 `cin/cout` 或文件流处理传感器点云数据的初步解析;第三,在代码中规范使用命名空间,避免编译冲突。
资料包里的视频是主线,但别只动眼。建议配合一个轻量级 C++ 工程实践:创建一个简单的“车道线检测”模块(哪怕只是模拟数据),尝试用 C++ 类封装算法,用 I/O 流读取模拟的相机图像元数据,并规范命名空间。每看完一节,就对照代码手动敲一遍,重点关注编译器的警告信息——这正是课程中强调的“工程严谨性”的体现。不要追求一次通懂所有 STL 组件,先聚焦于课程覆盖的基础语法与流操作,这是构建后续指针、模板、多线程等高阶知识的坚实地基。
课程介绍
172006gbswazqorw03sws3.jpg 2025-3-22 14:09 上传 ├──第1章 课程介绍 | ├──1.面向自动驾驶的C?不同编程语言比较.mp4 129.34M | ├──3_1.2 如何有效学习C++?编程语言和自然语言比较.mp4 87.05M | ├──4_1.3 面向群体和学后收获.mp4 13.97M | └──5_1.4 讲解思路和课程大纲.mp4 46.95M ├──第2章 C 程序.mp4 41.87M | ├──14_2.2.2 语句.mp4 8.15M | ├──15_2.2.3 基本输入输出流.mp4 50.62M | ├──16_2.2.4 注释.mp4 32.08M | ├──17_2.2.5 命名空间.mp4 85.70M | ├──18_2.3.1 顺序结构.mp4 3.93M | ├──19
课程目录
172006gbswazqorw03sws3.jpg 2025-3-22 14:09 上传 ├── 第1章 课程介绍 | ├──1.面向自动驾驶的C?不同编程语言比较.mp4 129.34M | ├──3_1.2 如何有效学习C++?编程语言和自然语言比较.mp4 87.05M | ├──4_1.3 面向群体和学后收获.mp4 13.97M | └──5_1.4 讲解思路和课程大纲.mp4 46.95M ├── 第2章 C 程序.mp4 41.87M | ├──14_2.2.2 语句.mp4 8.15M | ├──15_2.2.3 基本输入输出流.mp4 50.62M | ├──16_2.2.4 注释.mp4 32.08M | ├──17_2.2.5 命名空间.mp4 85.70M | ├──18_2.3.1 顺序结构.mp4 3.93M | ├──19_2.3.2 循环结构.mp4 84.12M | ├──20_2.3.3 分支结构.mp4 93.96M | ├──21_2.3.4 无条件转移结构.mp4 16.87M | ├──22_2.4.1 自动驾驶中的数据流动.mp4 31.50M | ├──23_2.4.2 基础数据类型.mp4 157.04M | ├──24_2.4.3 枚举类型.mp4 60.01M | ├──25_2.4.4 字符串.mp4 73.40M | ├──26_2.4.5 复合数据类型struct.mp4 33.55M | ├──27_2.4.6 数据结构.mp4 12.07M | ├──28_2.5.1 模块化.mp4 20.61M | ├──29_2.5.2 函数.mp4 92.36M | ├──30_2.5.3 文件组织.mp4 81.09M | ├──31_2.6.1 堆和栈内存.mp4 43.74M | ├──32_2.6.2 指针.mp4 38.01M | ├──33_2.6.3 引用.mp4 26.49M | ├──34_2.7 小结与作业.mp4 18.34M | ├──6_面向自动驾驶的C开发环境介绍.mp4 34.87M | ├──8_2.1.2 C开发环境.mp4 31.72M ├── 第3章 深入面向对象编程 | ├──35_3.1.1 什么是面向对象编程.mp4 68.55M | ├──36_3.1.2 编程范式.mp4 116.60M | ├──37_3.1.3 面向对象编程的优势.mp4 20.36M | ├──38_3.2.1 类和对象的关系.mp4 30.37M | ├──39_3.2.2 实现第一个自动驾驶模块吧.mp4 44.15M | ├──40_3.2.3 构造和析构.mp4 105.11M | ├──41_3.2.4 复制和赋值.mp4 138.56M | ├──42_3.2.5 this指针.mp4 57.10M | ├──42_3.2.5 this指针_20250224_194223.mp4 57.10M | ├──43_3.2.6 static类型.mp4 60.39M | ├──44_3.3.1 封装.mp4 61.69M | ├──45_3.3.2 继承.mp4 114.81M | ├──46_3.3.3多态.mp4 75.84M | ├──46_3.3.3多态_20250224_194253.mp4 75.84M | ├──47_3.3.4C模板.mp4 74.55M | ├──50_3.4.3模板元编程.mp4 89.63M | ├──51_3.5标准模板库STL.mp4 170.90M | ├──52_3.6.1重载.mp4 39.03M | ├──53_3.6.2异常处理.mp4 35.99M | ├──54_3.6.3资源管理与智能指针.mp4 130.92M | ├──55_3.7本章总结与感悟.mp4 66.15M | ├──56_3.8本章作业.mp4 18.07M | └──面向自动驾驶的C单元测试工具Gtest(一).mp4 95.88M | ├──1-11_433C单元测试工具Gtest(三).mp4 92.23M | ├──1-13_434其它工具与实践.mp4 55.68M | ├──1-14_441设计模式介绍.mp4 31.98M | ├──1-15_442创建型设计模式.mp4 153.65M | ├──1-16_443 结构型模式.mp4 243.42M | ├──1-17_444 行为型模式.mp4 111.01M | ├──1-18_445 设计模式小结.mp4 66.01M | ├──1-18_445 设计模式小结_20250224_194447.mp4 66.01M | ├──1-19_45 小结与作业.mp4 67.34M | ├──1-1_411自动驾驶代码是怎么命名的?-背景.mp4 30.33M | ├──1-2_412自动驾驶代码是怎么命名的?-命名规范.mp4 27.41M | ├──1-3_413自动驾驶代码是怎么命名的?-面向工程开发的命名.mp4 75.68M | ├──1-4_414自动驾驶代码是怎么命名的?-命名规范的自动化工具.mp4 35.80M | ├──1-5_421代码版本管理与GIT.mp4 105.78M | ├──1-6_422Git的基本使用——以实际任务为例.mp4 156.84M | ├──1-7_423Git使用的最佳实践.mp4 83.74M | ├──1-8_431软件测试.mp4 142.51M | ├──1-9_432自动驾驶测试.mp4 99.98M | └──面向自动驾驶的C实战_ 第5章.pdf 1.91M ├── 第6章 C实战_ 第6章.pdf 2.69M ├── 第7章 智能驾驶C实现神经网络模型.mp4 358.18M | ├──7.6 实战项目分享.mp4 219.70M | ├──7.7 小结与作业.mp4 28.64M | └──面向自动驾驶的C程序的性能问题-性能优化的必要性.mp4 94.48M | ├──8.1.2 C程序的性能问题-性能分析的必要性.mp4 98.05M | ├──8.2.1&2&3 C性能分析的方法与工具-系统级性能分析.mp4 168.29M | ├──8.2.5 C性能分析的方法与工具.mp4 157.19M | ├──8.3.1&2 C性能优化的方式:精益求精_20250224_195258.mp4 169.85M | ├──8.3.3&4 C性能优化的方式:精益求精.mp4 241.81M | ├──8.3.9 C的差异点.mp4 58.99M | ├──8.5.2 功能安全和ISO26262.mp4 127.13M | ├──8.6 小结与作业.mp4 13.85M | └──面向自动驾驶的C++实战_ 第8章.pdf 3.84M └── 第9章 工作心得 | ├──9.1 课程总结.mp4 100.42M | ├──9.2 关于面试.mp4 113.75M | └──9.3 感悟分享.mp4 95.56M




