2022升级百度大牛带你结合实践重学C++ 重构你的C++知识体系
2022升级,重学C++ ,重构你的C++知识体系
百度10年C++开发工程师的经验心得,带你深入底层、深入细节、深入思想,重学C++
〖课程介绍〗:
从学习角度看,C++是一门“见效慢”的语言;学习曲线陡峭,语言本身复杂。但,如果你想了解很多编程语言的思想源泉,想要一窥大型企业级开发工程的思路,想开发别人做不了的高性能程序,那C++就是你的不二之选。
都2022了,为什么我们还要学C++
因为在贴近底层、追求性能、降低功耗方面,C++几乎没有敌手,小到嵌入式、大
到分布式,C++都是解决问题的利器,面向物联网的“嵌入式”开发和面向大型化
的“分布式”开发都离不开它5G即来,C++在起势,你不抓住吗?
〖课程目录〗:
第1章 C++概括
视频:1-1 2020重C++ 课程导学(08:38)
视频:1-2 CPP的历史(12:54)
视频:1-3 CPP的特点(10:01)
视频:1-4 CPP的应用(08:06)
图文:1-5 第一章课后练习题
第2章 C++基础语法
视频:2-1 编译型语言(08:06)
视频:2-2 语言的数据类型(18:02)
视频:2-3 开发环境的安装与使用1-安装(16:40)
视频:2-4 开发环境的安装与使用2-使用于调试(23:23)
视频:2-5 语言的标识符和关键字(13:57)
视频:2-6 变量与常量(13:42)
视频:2-7 语言的注释(08:05)
图文:2-8 第二章课后练习题
第3章 C++的运算符与表达式
视频:3-1 运算符表达式和基本语句(06:25)
视频:3-2 运算符表达式和基本语句–算术运算符(22:17)
视频:3-3 运算符表达式和基本语句–关系运算符(06:56)
视频:3-4 运算符表达式和基本语句–逻辑运算符(23:01)
视频:3-5 运算符表达式和基本语句–赋值运算符(08:06)
视频:3-6 运算符表达式和基本语句–位运算符(20:14)
视频:3-7 运算符表达式和基本语句–杂项运算符及运算符的优先级(25:56)
图文:3-8 第三章课后练习最近学习
视频:3-9 提升补充部分:补码1(20:58)
视频:3-10 提升补充部分:补码2(20:46)
视频:3-11 提升补充部分:补码及位运算说明(24:43)
第4章 从C语言的陷阱到C++的改进
视频:4-1 字符语法的常见陷阱上(17:15)
视频:4-2 字符语法的常见陷阱下(05:30)
视频:4-3 C语言数组退化问题上(15:18)
视频:4-4 C语言数组退化问题下(13:38)
视频:4-5 C语言移位运算问题上(14:30)
视频:4-6 C语言移位运算问题下(13:42)
视频:4-7 C语言类型转换问题上(15:34)
视频:4-8 C语言类型转换问题下(13:01)
视频:4-9 C语言整数溢出问题上(12:19)
视频:4-10 C语言整数溢出问题下(14:36)
视频:4-11 .1 C语言字符串典型缺陷(15:48)
视频:4-12 .2 C语言字符串问题(22:55)
第5章 C++基础容器
视频:5-1 序列容器–数组(15:09)
视频:5-2 off-by-one error数组下标(14:54)
视频:5-3 数组增删改查及二维数组(22:23)
视频:5-4 动态数组Vector1(20:41)
视频:5-5 动态数组vector2(10:06)
视频:5-6 字符串简介(18:30)
视频:5-7 Unicode编码(28:58)
视频:5-8 字符串的指针表示(31:28)
视频:5-9 字符串基本操作1(32:08)
视频:5-10 字符串基本操作2(25:46)
视频:5-11 string的简介(23:43)
第6章 彻底学会 C++ 指针,引用
视频:6-1 指针的概念(27:22)
视频:6-2 左值与右值(08:42)
视频:6-3 一般指针,数组指针和指针数组(15:49)
视频:6-4 const与指针(16:39)
视频:6-5 指向指针的指针(06:46)
视频:6-6 关于野指针(21:12)
视频:6-7 指针的基本操作一(27:53)
视频:6-8 指针的基本操作二(20:50)
视频:6-9 指针的基本操作三(24:55)
视频:6-10 CPP程序的存储区域划分(31:19)
视频:6-11 CPP程序的存储区域划分总结(05:49)
视频:6-12 CPP动态分配和回收原则(12:56)
视频:6-13 RAII初步(03:36)
视频:6-14 几种变量的对比(09:35)
视频:6-15 内存泄漏(09:55)
视频:6-16 智能指针auto_ptr(31:22)
视频:6-17 智能指针unique_ptr(23:34)
视频:6-18 shared_ptr和weak_ptr理论讲解(12:26)
视频:6-19 shared_ptr和weak_ptr代码演示(20:11)
视频:6-20 引用(29:22)
作业:6-21 C++编程中我们是不是应该尽量避免使用指针?
第7章 C++基础句法
视频:7-1 图灵机与三种基本结构(04:23)
视频:7-2 if语句基础(12:28)
视频:7-3 if语句的例子(10:41)
视频:7-4 switch分支基础(05:37)
视频:7-5 switch和if的对比(15:22)
视频:7-6 自定义类型–枚举(17:45)
视频:7-7 自定义类型–结构体与联合体(10:16)
视频:7-8 结构体的内存布局(24:54)
视频:7-9 三种循环的基本使用与比较(21:49)
视频:7-10 for循环的一个优化实例(24:23)
视频:7-11 函数基础(12:16)
视频:7-12 函数重载overload与Name Mangling(20:35)
视频:7-13 指向函数的指针与返回指针的函数(14:31)
视频:7-14 命名空间。(09:30)
视频:7-15 函数体的Hack过程(31:32)
视频:7-16 内联函数。(14:43)
视频:7-17 数学归纳法与递归(19:09)
视频:7-18 递归的特点和Hack过程(27:09)
视频:7-19 尾递归的优化(13:10)
视频:7-20 递归的动态规划思路(11:46)
作业:7-21 C++语言到底需不需要GC(Gabage Collector
第8章 C++高级语法
视频:8-1 从抽象到面向对象编程(20:24)
视频:8-2 面向对象的抽象法则1-具体类型的抽象(14:24)
视频:8-3 对象的属性(12:06)
视频:8-4 运算符重载(18:38)
视频:8-5 拷贝构造及临时对象的优化(20:18)
视频:8-6 前置与后置操作符(17:17)
视频:8-7 标准输入输出IO重载(18:16)
视频:8-8 IO流基础(10:23)
视频:8-9 IO缓存区(17:01)
视频:8-10 文件操作基础(10:48)
视频:8-11 文本文件的操作(08:58)
视频:8-12 二进制文件的操作(19:20)
视频:8-13 Complex其他运算符重载(09:54)
视频:8-14 头文件重复包含问题(10:29)
视频:8-15 关于前七章的练习题及答案(07:25)
视频:8-16 深拷贝浅拷贝及move语义的优化(24:38)
视频:8-17 面向对象的抽象法则2(19:38)
视频:8-18 Hack对象模型和虚函数(18:22)
视频:8-19 面向对象三大特性及总结(06:34)
作业:8-20 C++编程中需要使用面向对象的设计模式吗?
第9章 C++编程思想
视频:9-1 软件的设计模式(06:16)
视频:9-2 单例模式。(08:10)
视频:9-3 static和单例模式的实现(11:36)
视频:9-4 观察者模式(12:28)
视频:9-5 list的使用和观察者模式的实现1(12:31)
视频:9-6 观察者模式的实现2(26:35)
视频:9-7 void星NULL和nullptr(10:23)
视频:9-8 static_cast的使用(08:11)
视频:9-9 reinterpret_cast的使用(07:22)
视频:9-10 static_cast和dynamic_cast的使用(22:55)
视频:9-11 Adapter模式和多重继承(19:18)
视频:9-12 Adapter组合方式实现(08:13)
视频:9-13 设计模式总结(04:37)
视频:9-14 泛型编程之泛型函数1(07:10)
视频:9-15 泛型编程之泛型函数2(13:01)
视频:9-16 泛型编程的递推过程及总结(12:34)
作业:9-17 C++中资源管理的方式很多:堆,栈,常量区,RAII等,该如
第10章 C++进阶编程
视频:10-1 STL标准库简介(07:36)
视频:10-2 序列型容器和函数对象基本使用(23:53)
视频:10-3 关联容器map的基本使用和查找(16:43)
视频:10-4 关联容器的插入删除及迭代器失效问题(19:02)
视频:10-5 从函数指针到仿函数模板(18:23)
视频:10-6 算法transform和lambda表达式(14:01)
视频:10-7 STL容器的统计与二分查找(17:26)
视频:10-8 从手写全排列到STL的实现(19:28)
视频:10-9 迭代器基本使用(12:37)
视频:10-10 手写GC与异常(11:16)
视频:10-11 自定义迭代器与手写GC(12:47)
视频:10-12 容器适配器(11:30)
视频:10-13 空间配置器初步(07:53)
视频:10-14 自定义空间配置器(06:38)
视频:10-15 STL空间配置器源码剖析与STL总结(12:52)
视频:10-16 关于Boost库(14:19)
视频:10-17 CPP多线程基础(17:08)
视频:10-18 多线程银行存取款案例(17:01)
视频:10-19 多线程小结(06:07)
第11章 Linux C++编程初步
视频:11-1 -1 Linux C++环境搭建、编程和调试基础上(12:08)
视频:11-2 -2 Linux C++环境搭建、编程和调试基础下(15:20)
视频:11-3 LinuxCPP之什么是Makefile(08:29)
视频:11-4 LinuxCPP之Makefile产生的背景(14:41)
视频:11-5 LinuxCPP之Makefile之make和Makefile的调用(07:48)
视频:11-6 LinuxCPP之Makefile的格式(14:21)
视频:11-7 LinuxCPP之Makefile的扩展用法(16:10)
视频:11-8 LinuxCPP之Makefile编写中的变量1(12:36)
视频:11-9 LinuxCPP之Makefile编写中的变量2(15:15)
视频:11-10 LinuxCPP之Makefile编写中的变量3(20:17)
视频:11-11 LinuxCPP之Makefile的自动生成和部署–CMake的使用(17:33)
视频:11-12 VisualStudio开发LinuxCPP的基本使用(13:52)
第12章 桌面应用项目实战:设计项目的架构和标准
视频:12-1 慕影项目的效果展示(02:52)
视频:12-2 项目环境的安装和部署(09:57)
视频:12-3 项目的基本架构和pro文件(07:40)
视频:12-4 项目中用到的大致QT知识(04:07)
第13章 实现项目《慕影》的通用组件模块:
视频:13-1 QT和VS的项目使用(08:04)
视频:13-2 QT项目的基础架构类和UI类(08:39)
视频:13-3 QQString的基本使用(13:31)
视频:13-4 QDebug的基本使用(12:51)
视频:13-5 QT的智能指针QScopedPointer(09:58)
视频:13-6 QThread的使用(13:54)
第14章 《慕影》播放器UI模块开发
视频:14-1 项目的整体UI架构(11:25)
视频:14-2 项目资源和UI加载的流程(11:23)
视频:14-3 qml的最基本使用和项目绑定(05:17)
视频:14-4 修正一个bug和框架调整(13:06)
视频:14-5 qml属性的基本使用(12:41)
视频:14-6 项目的换肤实现1(09:12)
视频:14-7 项目的换肤实现2(06:19)
视频:14-8 项目的换肤实现3(15:22)
视频:14-9 项目的换肤实现4(13:31)
第15章 实现《慕影》音视频模块开发
视频:15-1 音视频采样编码的基本原理(05:24)
视频:15-2 ffmpeg的基本情况(06:13)
视频:15-3 PCM过程的一些基本参数(07:01)
视频:15-4 读取PCM音频文件进行播放1(09:19)
视频:15-5 读取PCM音频文件进行播放2(05:26)
视频:15-6 视频的封装格式及播放的基本流程(08:02)
视频:15-7 ffmpeg的解码大致流程(05:43)
视频:15-8 ffmpeg程序的环境配置(07:17)
视频:15-9 ffmpeg编写解码程序1(10:07)
视频:15-10 ffmpeg编写解码程序2(17:32)
视频:15-11 ffmpeg编写解码程序3(16:13)
视频:15-12 ffmpeg编写解码程序4(21:31)
第16章 《慕影》播放器项目总结
视频:16-1 项目总结(04:08)
视频:16-2 项目UI功能总结(05:39)
视频:16-3 项目播放功能总结1(10:49)
视频:16-4 项目播放功能总结2(11:10)
第17章 C,C++内存调试初步内容更新中
第18章 C++的陷阱和经验
视频:18-1 谈谈个人的学习工作经历(04:38)
视频:18-2 谈谈个人学习工作的一点感悟(05:34)
视频:18-3 推荐几本CPP的书籍(08:04)
视频:18-4 谈谈CPP的陷阱(07:14)
作业:18-5 如何认识Linux之父炮轰C++语言?
第19章 课程总结
视频:19-1 课程总结(07:46)