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