了解C++的历史概况,C++语言的特点及C++语言作用,认识哪些场合下C++是无可替代的;
1-1 2020重C++ 课程导学 (08:38)
试看1-2 CPP的历史 (12:54)
1-3 CPP的特点 (10:01)
1-4 CPP的应用 (08:06)
图文:
1-5 第一章课后练习题
本章讲解编程语言的层次,编译语言的特点;深入学习C++常见的标识符,关键字,数据类型,变量,常量及;IDE Visual Studio的安装,使用和调试方法;
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 第二章课后练习题
理论结合实际,深入讲解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)
本章我们将深入剖析C++数组:传统的数组优缺点及STL中vector的使用和思想;剖析C++的字符串: 对比C的字符串,C++的字符串,Redis字符串的处理;
4-1 序列容器–数组 (15:09)
4-2 off-by-one error数组下标 (14:54)
4-3 数组增删改查及二维数组 (22:23)
4-4 动态数组Vector1 (20:41)
4-5 动态数组vector2 (10:06)
4-6 字符串简介 (18:30)
4-7 Unicode编码 (28:58)
4-8 字符串的指针表示 (31:28)
4-9 字符串基本操作1 (32:08)
4-10 字符串基本操作2 (25:46)
4-11 string的简介 (23:43)
指针是C++重点:深入讲解指针的概念,各种类型的指针,const指针,数组指针与指针数组;指针的指针,指向函数的指针;更高级的内容:如何避免野指针,各种指针的使用场景,及实际工程中必须避免的用法和相对好的做法;讲解引用与指针的关系: 会使用引用,知道实际工程中比较好的一些做法;…
5-1 指针的概念 (27:22)
5-2 左值与右值 (08:42)
5-3 一般指针,数组指针和指针数组 (15:49)
5-4 const与指针 (16:39)
5-5 指向指针的指针 (06:46)
5-6 关于野指针 (21:12)
5-7 指针的基本操作一 (27:53)
5-8 指针的基本操作二 (20:50)
5-9 指针的基本操作三 (24:55)
5-10 CPP程序的存储区域划分 (31:19)
5-11 CPP程序的存储区域划分总结 (05:49)
5-12 CPP动态分配和回收原则 (12:56)
5-13 RAII初步 (03:36)
5-14 几种变量的对比 (09:35)
5-15 内存泄漏 (09:55)
5-16 智能指针auto_ptr (31:22)
5-17 智能指针unique_ptr (23:34)
5-18 shared_ptr和weak_ptr理论讲解 (12:26)
5-19 shared_ptr和weak_ptr代码演示 (20:11)
5-20 引用 (29:22)
作业:
5-21 C++编程中我们是不是应该尽量避免使用指针?
深入讲解基本语句:赋值语句,判断语言,循环语言for, while;深入讲解基本数据与结构,枚举,结构体和联合体;深入讲解函数,递归函数的来龙去脉;浅析类与面向对象的概念;谈谈命名空间的使用。
6-1 图灵机与三种基本结构 (04:23)
6-2 if语句基础 (12:28)
6-3 if语句的例子 (10:41)
6-4 switch分支基础 (05:37)
6-5 switch和if的对比 (15:22)
6-6 自定义类型–枚举 (17:45)
6-7 自定义类型–结构体与联合体 (10:16)
6-8 结构体的内存布局 (24:54)
6-9 三种循环的基本使用与比较 (21:49)
6-10 for循环的一个优化实例 (24:23)
6-11 函数基础 (12:16)
6-12 函数重载overload与Name Mangling (20:35)
6-13 指向函数的指针与返回指针的函数 (14:31)
6-14 命名空间。 (09:30)
6-15 函数体的Hack过程 (31:32)
6-16 内联函数。 (14:43)
6-17 数学归纳法与递归 (19:09)
6-18 递归的特点和Hack过程 (27:09)
6-19 尾递归的优化 (13:10)
6-20 递归的动态规划思路 (11:46)
作业:
6-21 C++语言到底需不需要GC(Gabage Collector
深入剖析C++类型转换:显式转换的四种常见的方式,隐式转换类型转换的影响; 用通俗易懂的方式深入浅出讲解异常,IO,文件,线程,模版编程,这些很难难用的部分;
7-1 从抽象到面向对象编程 (20:24)
7-2 面向对象的抽象法则1-具体类型的抽象 (14:24)
7-3 对象的属性 (12:06)
7-4 运算符重载 (18:38)
7-5 拷贝构造及临时对象的优化 (20:18)
7-6 前置与后置操作符 (17:17)
7-7 标准输入输出IO重载 (18:16)
7-8 IO流基础 (10:23)
7-9 IO缓存区 (17:01)
7-10 文件操作基础 (10:48)
7-11 文本文件的操作 (08:58)
7-12 二进制文件的操作 (19:20)
7-13 Complex其他运算符重载 (09:54)
7-14 头文件重复包含问题 (10:29)
7-15 关于前七章的练习题及答案 (07:25)
7-16 深拷贝浅拷贝及move语义的优化 (24:38)
7-17 面向对象的抽象法则2 (19:38)
7-18 Hack对象模型和虚函数 (18:22)
7-19 面向对象三大特性及总结 (06:34)
作业:
7-20 C++编程中需要使用面向对象的设计模式吗?
深入再谈Class;深入再谈面向对象模式,23种设计模式的思路和最常用的单例,观察者模式等在工程中的实际使用;分析C++模版编程范式;
8-1 软件的设计模式 (06:16)
8-2 单例模式。 (08:10)
8-3 static和单例模式的实现 (11:36)
8-4 观察者模式 (12:28)
8-5 list的使用和观察者模式的实现1 (12:31)
8-6 观察者模式的实现2 (26:35)
8-7 void星NULL和nullptr (10:23)
8-8 static_cast的使用 (08:11)
8-9 reinterpret_cast的使用 (07:22)
8-10 static_cast和dynamic_cast的使用 (22:55)
8-11 Adapter模式和多重继承 (19:18)
8-12 Adapter组合方式实现 (08:13)
8-13 设计模式总结 (04:37)
8-14 泛型编程之泛型函数1 (07:10)
8-15 泛型编程之泛型函数2 (13:01)
8-16 泛型编程的递推过程及总结 (12:34)
作业:
8-17 C++中资源管理的方式很多:堆,栈,常量区,RAII等,该如
深入讲解STL思想,细致讲解容器,算法,C++内存分配,迭代器等STL编程方法,String类等,讲解Boost库的使用技巧;
9-1 STL标准库简介 (07:36)
9-2 序列型容器和函数对象基本使用 (23:53)
9-3 关联容器map的基本使用和查找 (16:43)
9-4 关联容器的插入删除及迭代器失效问题 (19:02)
9-5 从函数指针到仿函数模板 (18:23)
9-6 算法transform和lambda表达式 (14:01)
9-7 STL容器的统计与二分查找 (17:26)
9-8 从手写全排列到STL的实现 (19:28)
9-9 迭代器基本使用 (12:37)
9-10 手写GC与异常 (11:16)
9-11 自定义迭代器与手写GC (12:47)
9-12 容器适配器 (11:30)
9-13 空间配置器初步 (07:53)
9-14 自定义空间配置器 (06:38)
9-15 STL空间配置器源码剖析与STL总结 (12:52)
9-16 关于Boost库 (14:19)
9-17 CPP多线程基础 (17:08)
9-18 多线程银行存取款案例 (17:01)
9-19 多线程小结 (06:07)
项目的实现效果介绍及项目使用的技术框架;
10-1 慕影项目的效果展示 (02:52)
10-2 项目环境的安装和部署 (09:57)
10-3 项目的基本架构和pro文件 (07:40)
10-4 项目中用到的大致QT知识 (04:07)
介绍QT项目的基本类库,字符串类,智能指针类及调试信息等;
11-1 QT和VS的项目使用 (08:04)
11-2 QT项目的基础架构类和UI类 (08:39)
11-3 QQString的基本使用 (13:31)
11-4 QDebug的基本使用 (12:51)
11-5 QT的智能指针QScopedPointer (09:58)
11-6 QThread的使用 (13:54)
实现项目UI部分,qml与C++的交互方式,换肤模块的开发;
12-1 项目的整体UI架构 (11:25)
12-2 项目资源和UI加载的流程 (11:23)
12-3 qml的最基本使用和项目绑定 (05:17)
12-4 修正一个bug和框架调整 (13:06)
12-5 qml属性的基本使用 (12:41)
12-6 项目的换肤实现1 (09:12)
12-7 项目的换肤实现2 (06:19)
12-8 项目的换肤实现3 (15:22)
12-9 项目的换肤实现4 (13:31)
实现项目PCM, 核心音频模块功能,核心视频模块功能,了解开源架构ffmpeg的设计和使用;
13-1 音视频采样编码的基本原理 (05:24)
13-2 ffmpeg的基本情况 (06:13)
13-3 PCM过程的一些基本参数 (07:01)
13-4 读取PCM音频文件进行播放1 (09:19)
13-5 读取PCM音频文件进行播放2 (05:26)
13-6 视频的封装格式及播放的基本流程 (08:02)
13-7 ffmpeg的解码大致流程 (05:43)
13-8 ffmpeg程序的环境配置 (07:17)
13-9 ffmpeg编写解码程序1 (10:07)
13-10 ffmpeg编写解码程序2 (17:32)
13-11 ffmpeg编写解码程序3 (16:13)
13-12 ffmpeg编写解码程序4 (21:31)
项目整体的代码讲解,分析与总结
14-1 项目总结 (04:08)
14-2 项目UI功能总结 (05:39)
14-3 项目播放功能总结1 (10:49)
14-4 项目播放功能总结2 (11:10)
通过剖析C++常见经典著作和对一些大牛的经验解读,排除大家学习C++的坑,为大家将来成为C++技术大牛铺设一条基本路线;
15-1 谈谈个人的学习工作经历 (04:38)
试看15-2 谈谈个人学习工作的一点感悟 (05:34)
15-3 推荐几本CPP的书籍 (08:04)
15-4 谈谈CPP的陷阱 (07:14)
作业:
15-5 如何认识Linux之父炮轰C++语言?
总结C++基础知识在项目中的应用,项目中可能的坑和存在改善的问题;
重学C++
30小时快速精通C++