课程目录
1-1 [C++基础] 课程概述(包含移动应用和游戏开发学习网络介绍) (10:38) 1-2 [C++基础] C++的开发环境搭建 (19:47) 1-3 [C++基础] 先来编写第一个C++程序 (08:56) 1-4 [C++基础] C++程序的总入口:main函数 (13:47) 1-5 [C++基础] C++注释到底是怎样的 (02:10) 1-6 [C++基础] 第一个预编译指令#include (06:44) 1-7 [C++基础] 命名空间(namespace)、cout与endl (04:52) 1-8 [C++基础] 变量和命名规范 (24:34) 2-1 [简单数据类型与算数运算符] 基础数据类型:整型 (20:02) 2-2 [简单数据类型与算数运算符] 基础数据类型:字符(char) (13:40) 2-3 [简单数据类型与算数运算符] C++中的特殊字符 (15:45) 2-4 [简单数据类型与算数运算符] 宽字符类型(包括C++ 11支持的类型) (14:02) 2-5 [简单数据类型与算数运算符] 基础数据类型:布尔(bool) (04:04) 2-6 [简单数据类型与算数运算符] 基础数据类型:浮点类型 (30:22) 2-7 [简单数据类型与算数运算符] 浮点类型值的存储方式 (46:07) 2-8 [简单数据类型与算数运算符] 变量初始化(包括C++ 11中的初始化方式) (07:58) 2-9 [简单数据类型与算数运算符] 常量 (02:21) 2-10 [简单数据类型与算数运算符] C++中的基本操作符(Operator) (12:09) 2-11 [简单数据类型与算数运算符] 自动类型转换 (22:52) 2-12 [简单数据类型与算数运算符] 强制类型转换 (06:21) 2-13 [简单数据类型与算数运算符] C++ 11中的auto关键字 (17:48) 3-1 [复杂数据类型] 数组基础 (09:23) 3-2 [复杂数据类型] 数组初始化(包括C++ 11中的数组初始化方法) (10:04) 3-3 [复杂数据类型] C风格的字符串 (19:31) 3-4 [复杂数据类型] C风格字符串的输入 (20:54) 3-5 [复杂数据类型] C++风格的字符串:string类 (06:25) 3-6 [复杂数据类型] 字符串的复制、连接和获取长度 (15:19) 3-7 [复杂数据类型] 宽字符串和Raw String (15:07) 3-8 [复杂数据类型] 结构体的定义、初始化和使用 (11:31) 3-9 [复杂数据类型] 结构体(Struct)数组 (06:15) 3-10 [复杂数据类型] 计算结构体(Struct)尺寸 (20:54) 3-11 [复杂数据类型] 结构体(Struct)的位字段 (13:36) 3-12 [复杂数据类型] 共用体(Union) (15:08) 3-13 [复杂数据类型] 枚举类型变量的定义和赋值 (06:04) 3-14 [复杂数据类型] 设置枚举类型成员的值 (12:30) 3-15 [复杂数据类型] 枚举类(enum class):C++ 11新特性 (11:24) 3-16 [复杂数据类型] 枚举类型的尺寸 (14:32) 3-17 [复杂数据类型] 匿名类型和类型别名 (15:39) 3-18 [复杂数据类型] 指针基础 (22:03) 3-19 [复杂数据类型] 指针移动与数据类型 (12:39) 3-20 [复杂数据类型] 关于指针初始化的问题 (07:07) 3-21 [复杂数据类型] 使用new动态分配内存空间 (07:24) 3-22 [复杂数据类型] 使用delete释放内存空间 (15:40) 3-23 [复杂数据类型] 动态创建和释放数组 (07:29) 3-24 [复杂数据类型] 使用动态创建的数组 (10:10) 3-25 [复杂数据类型] 指针与字符串 (09:20) 3-26 [复杂数据类型] 常量指针与指针常量 (08:57) 3-27 [复杂数据类型] 使用new动态创建结构体 (05:41) 3-28 [复杂数据类型] 使用new动态创建共用体 (04:21) 3-29 [复杂数据类型] 多维数组和多级指针 (32:51) 3-30 [复杂数据类型] vector模板类基础 (10:26) 3-31 [复杂数据类型] 数组模板基础 (26:41) 4-1 [循环语句] for循环 (26:36) 4-2 [循环语句] 用for-in循环枚举集合中的元素(C++ 11) (07:13) 4-3 [循环语句] 集合与指针(begin&&end) (11:42) 4-4 [循环语句] while循环 (13:55) 4-5 [循环语句] do...while循环 (10:29) 4-6 [循环语句] 循环退出(break)和继续(continue) (05:47) 4-7 [循环语句] 自增(++)、自减(--)和组合赋值操作符 (21:48) 4-8 [循环语句] goto语句与深层循环 (18:17) 5-1 [条件语句和逻辑运算符] 条件语句if和do...while(0)形式的宏 (18:29) 5-2 [条件语句和逻辑运算符] 逻辑表达式与短路问题 (12:30) 5-3 [条件语句和逻辑运算符] 处理字符的函数集:cctype (06:56) 5-4 [条件语句和逻辑运算符] 问号(?)操作符 (14:22) 5-5 [条件语句和逻辑运算符] 条件语句:switch (16:44) 6-1 [函数基础] 函数基础 (11:53) 6-2 [函数基础] 函数参数与值传递 (05:02) 6-3 [函数基础] 函数与数组类型的参数 (04:41) 6-4 [函数基础] 函数与C风格的字符串 (05:43) 6-5 [函数基础] 函数与结构体、共用体 (09:02) 6-6 [函数基础] 函数指针 (09:33) 7-1 [函数深度探索] 内联(inline)函数 (07:48) 7-2 [函数深度探索] 可在编译时计算为常量的函数(constexpr) (09:29) 7-3 [函数深度探索] 引用类型的变量 (06:38) 7-4 [函数深度探索] 引用类型的函数参数 (07:51) 7-5 [函数深度探索] 引用类型的结构体函数参数 (04:47) 7-6 [函数深度探索] 函数中的默认参数 (09:56) 7-7 [函数深度探索] 函数重载(overload) (11:20) 7-8 [函数深度探索] 函数模板(相当于Java中的泛型) (08:26) 7-9 [函数深度探索] 函数模板重载 (06:21) 7-10 [函数深度探索] 函数模板的特例化 (09:07) 7-11 [函数深度探索] 模板函数特例化(补充) (02:37) 7-12 [函数深度探索] decltype关键字(C++ 11) (08:15) 7-13 [函数深度探索] decltype的规则(C++ 11) (16:20) 7-14 [函数深度探索] decltype与返回值 (08:59) 8-1 [编译、链接和命名空间] #include头文件的原理和规则 (16:27) 8-2 [编译、链接和命名空间] 解决#include重复定义的问题 (06:15) 8-3 [编译、链接和命名空间] #include的循环引用问题 (09:52) 8-4 [编译、链接和命名空间] 头文件中建议包含的和不建议包含的内容 (11:49) 8-5 [编译、链接和命名空间] 定义和声明 (09:04) 8-6 [编译、链接和命名空间] 链接性为外部和内部的变量 (06:27) 8-7 [编译、链接和命名空间] 函数中的静态变量(无链接性的局部变量) (04:41) 8-8 [编译、链接和命名空间] mutable说明符(允许设置const结构体变量的成员值) (03:11) 8-9 [编译、链接和命名空间] const对链接性的影响 (04:18) 8-10 [编译、链接和命名空间] 函数的链接性 (08:19) 8-11 [编译、链接和命名空间] 语言链接性 (10:38) 8-12 [编译、链接和命名空间] 命名空间的定义 (09:34) 8-13 [编译、链接和命名空间] 使用using namespace和using引用命名空间中的资源 (02:50) 8-14 [编译、链接和命名空间] 嵌套命名空间 (04:09) 8-15 [编译、链接和命名空间] 匿名命名空间 (03:33) 9-1 [类和对象] 类定义和成员访问控制 (17:43) 9-2 [类和对象] 定义和实现类中的方法 (10:17) 9-3 [类和对象] 内联方法 (05:08) 9-4 [类和对象] 类的初始化和构造方法 (14:15) 9-5 [类和对象] 默认构造方法和参数默认值 (05:58) 9-6 [类和对象] 析构方法 (08:53) 9-7 [类和对象] C++ 11初始化对象的方式总结 (03:38) 9-8 [类和对象] 常量(const)方法 (05:04) 9-9 [类和对象] this指针 (02:54) 9-10 [类和对象] 对象数组 (11:05) 9-11 [类和对象] 类中的常量(const) (08:49) 9-12 [类和对象] 类中的枚举类型 (04:23) 10-1 [类的高级技术] 操作符重载 (15:23) 10-2 [类的高级技术] 函数形式的操作符重载 (07:27) 10-3 [类的高级技术] 操作符重载的限制 (15:36) 10-4 [类的高级技术] 友元函数 (14:27) 10-5 [类的高级技术] 友元函数与<<操作符重载 (08:40) 10-6 [类的高级技术] 类型转换(数值和对象之间的互转,转换函数的编写) (10:15) 10-7 [类的高级技术] 类中静态变量和静态常量的初始化问题 (15:57) 10-8 [类的高级技术] 复制构造方法 (14:34) 10-9 [类的高级技术] 使用复制构造方法可能会带来的问题 (09:51) 10-10 [类的高级技术] 类的静态成员方法 (03:10) 10-11 [类的高级技术] 函数/方法的参数和返回值应该返回对象,还是对象引用 (12:27) 10-12 [类的高级技术] 操作符重载返回常量对象引用,还是对象引用 (05:29) 11-1 [类的继承] 类的继承 (05:26) 11-2 [类的继承] 子类构造方法调用父类的构造方法 (13:30) 11-3 [类的继承] 虚方法与多态 (15:15) 11-4 [类的继承] protected访问控制 (05:24) 11-5 [类的继承] 抽象类和纯虚函数 (07:49) 12-1 [代码重用] valarray模板类 (04:41) 12-2 [代码重用] 成员变量的初始化顺序 (04:05) 12-3 [代码重用] C++中的单件模式(Singleton) (13:36) 12-4 [代码重用] explicit与单参数的构造方法 (03:42) 12-5 [代码重用] 私有(private)继承 (06:01) 12-6 [代码重用] 避免操作符重载造成的递归调用 (04:46) 12-7 [代码重用] 保护(protected)继承 (03:54) 12-8 [代码重用] 使用using重新定义访问权限 (08:24) 12-9 [代码重用] C++中的多继承 (11:50) 12-10 [代码重用] 多继承与共同基类的问题 (04:49) 12-11 [代码重用] 虚基类(虚继承) (09:41) 12-12 [代码重用] 多继承与父类方法冲突 (06:18) 12-13 [代码重用] 模板类 (17:26) 12-14 [代码重用] 模板中的非类型参数 (11:21) 12-15 [代码重用] 模板的继承和组合 (09:46) 12-16 [代码重用] 递归使用模板 (03:44) 12-17 [代码重用] 拥有多个类型参数的模板 (03:13) 12-18 [代码重用] 默认类型参数 (02:01) 12-19 [代码重用] 模板类的显式具体化 (13:59) 12-20 [代码重用] 模板类的部分具体化 (17:07) 12-21 [代码重用] 成员模板 (10:47) 12-22 [代码重用] 将模板类作为类型参数的类型 (04:28) 12-23 [代码重用] 模板类与友元函数 (18:04) 12-24 [代码重用] 模板别名(C++ 11) (08:08) 13-1 [友元类和嵌套类] 友元类 (09:26) 13-2 [友元类和嵌套类] 友元成员方法(相当虐心) (19:28) 13-3 [友元类和嵌套类] 互为友元类 (07:25) 13-4 [友元类和嵌套类] 共同的友元函数 (05:46) 13-5 [友元类和嵌套类] 嵌套类基础 (06:44) 13-6 [友元类和嵌套类] 嵌套类的访问权限 (12:49) 13-7 [友元类和嵌套类] 模板类中的嵌套类 (20:01) 14-1 [异常处理] 错误返回码与abort函数 (14:15) 14-2 [异常处理] 引发异常与捕捉异常(throw,try...catch) (11:34) 14-3 [异常处理] 将对象作为异常表达式抛出 (08:55) 14-4 [异常处理] 异常捕捉的else (11:56) 14-5 [异常处理] 异常类的基类:exception (04:12) 14-6 [异常处理] throw和noexcept (18:48) 14-7 [异常处理] 系统的预定义异常类 (15:32) 14-8 [异常处理] 捕获由new产生的异常 (06:53) 14-9 [异常处理] 阻止new抛出异常 (02:19) 15-1 [类型识别和转换] 类型识别:dynamic_cast运算符 (17:04) 15-2 [类型识别和转换] dynamic_cast与引用类型转换 (10:09) 15-3 [类型识别和转换] 类型识别:typeid运算符 (14:14) 15-4 [类型识别和转换] 类型转换运算符概述 (06:50) 15-5 [类型识别和转换] const_cast运算符 (06:29) 15-6 [类型识别和转换] static_cast运算符 (03:58) 15-7 [类型识别和转换] reinterpret_cast运算符 (05:50) 16-1 [string类与智能指针] string类的构造方法 (21:54) 16-2 [string类与智能指针] 输入string类型的值 (11:00) 16-3 [string类与智能指针] string值的比较和定位 (20:56) 16-4 [string类与智能指针] 获取string的尺寸和分配的空间大小 (13:52) 16-5 [string类与智能指针] 智能指针的基本用法 (15:01) 16-6 [string类与智能指针] auto_ptr、shared_ptr和unique_ptr的区别和应用场景 (12:42) 16-7 [string类与智能指针] unique_ptr与临时右值 (06:00) 16-8 [string类与智能指针] 如何选择智能指针 (09:06) 17-1 [标准模板库(STL)] 标准模板库(STL)概述 (05:46) 17-2 [标准模板库(STL)] 迭代器(Iterator)基础 (30:31) 17-3 [标准模板库(STL)] 用于替代for语句的for_each函数 (08:31) 17-4 [标准模板库(STL)] 用于随机排列容器中元素值的random_shuffle函数 (04:25) 17-5 [标准模板库(STL)] 用于对容器中元素值排序的sort函数 (16:16) 17-6 [标准模板库(STL)] 用于查找容器中元素值的find函数 (04:06) 17-7 [标准模板库(STL)] 用于复制容器元素值的copy函数 (03:17) 17-8 [标准模板库(STL)] 枚举容器中元素的3种方法 (05:40) 17-9 [标准模板库(STL)] 将STL算法用于非STL容器 (09:08) 17-10 [标准模板库(STL)] STL中的容器 (12:51) 17-11 [标准模板库(STL)] 双向链表容器类:list (28:48) 17-12 [标准模板库(STL)] 同时兼具vector和list优势的双端队列:deque (07:31) 17-13 [标准模板库(STL)] 单向链表容器:forward_list(C++ 11) (04:47) 17-14 [标准模板库(STL)] 队列容器类:queue (07:35) 17-15 [标准模板库(STL)] 永远获得最大值的队列容器类:priority_queue (04:14) 17-16 [标准模板库(STL)] 栈容器类:stack (03:37) 17-17 [标准模板库(STL)] 数组模板类:array (05:34) 17-18 [标准模板库(STL)] 集合容器类:set (15:11) 17-19 [标准模板库(STL)] 支持重复值的集合容器类:multiset (03:07) 17-20 [标准模板库(STL)] 映射容器类:map (10:16) 17-21 [标准模板库(STL)] 允许key重复的映射容器类:multimap (15:33) 17-22 [标准模板库(STL)] 无序关联容器(C++ 11) (07:37) 17-23 [标准模板库(STL)] 函数对象 (11:29) 17-24 [标准模板库(STL)] STL中预定义的函数对象(函数符) (09:30) 17-25 [标准模板库(STL)] STL中的算法函数 (11:33) 17-26 [标准模板库(STL)] STL与string (06:30) 18-1 [更多的C++ 11新特性] lambda表达式基础 (16:39) 18-2 [更多的C++ 11新特性] 为什么要使用lambda表达式 (06:39) 18-3 [更多的C++ 11新特性] lambda表达式的参数和返回值类型 (07:35) 18-4 [更多的C++ 11新特性] lambda表达式与变量的访问权限 (11:42) 18-5 [更多的C++ 11新特性] lambda表达式类型 (08:02) 18-6 [更多的C++ 11新特性] 将lambda表达式作为委托(Delegate)的方法 (09:07) 18-7 [更多的C++ 11新特性] 模板调用的低效性 (12:27) 18-8 [更多的C++ 11新特性] 用function包装器解决模板调用的低效性问题 (03:41) 18-9 [更多的C++ 11新特性] 更简洁地使用function包装器 (06:24) 18-10 [更多的C++ 11新特性] 可变参数模板 (10:50) 19-1 [准C++标准库:Boost] Boost简介 (06:20) 19-2 [准C++标准库:Boost] 下载和安装Boost Library (09:50) 19-3 [准C++标准库:Boost] 第一个Boost程序 (08:56) 19-4 [准C++标准库:Boost] 字符串和日期类型互转 (27:50) 19-5 [准C++标准库:Boost] 计算两个时间之间的间隔(以天为单位) (04:10) 19-6 [准C++标准库:Boost] 通过改变年来改变日期 (04:18) 19-7 [准C++标准库:Boost] 计算指定月的天数 (10:03) 19-8 [准C++标准库:Boost] array的新特性 (07:14) 19-9 [准C++标准库:Boost] 双值映射(bimap) (10:33) 19-10 [准C++标准库:Boost] 多值索引容器(multi_index_container) (20:08) 19-11 [准C++标准库:Boost] 线程基础 (06:54) 19-12 [准C++标准库:Boost] 线程中断 (04:40) 19-13 [准C++标准库:Boost] 线程同步 (05:12) 19-14 [准C++标准库:Boost] 正则表达式与字符串进行比较 (06:53) 19-15 [准C++标准库:Boost] 在字符串中搜索所有满足正则表达式规则的子字符串 (04:46) 19-16 [准C++标准库:Boost] 替换字符串中符合正则表达式规则的子字符串 (01:37) 19-17 [准C++标准库:Boost] 分隔字符串 (03:20) 19-18 [准C++标准库:Boost] 元组类型(tuple) (02:26)






