Skip to main content

跟我一起学C++第一季

简介

B站播放地址:https://www.bilibili.com/video/BV1dZ4y1f7U8

章节

01C++介绍

为什么要学习C++

C++为什么难学

C++ 11值得学习的新特性

几本推荐的书籍

开发工具选择

02从C到C++(一)

bool类型

const限定符

const与#define

结构体内存对齐

03从C到C++(二)

域运算符

new、delete运算符

重载

name managling与extern "C"

带默认参数的函数

04从C到C++(三)

引用

const引用

引用传递

引用作为函数返回值

引用与指针区别

05从C到C++(四)

内联函数

内联函数与带参数宏区别

新的类型转换运算符

static_cast<T>(expr)

const_cast<T>(expr)

reinterpret_cast<T>(expr)

dynamic_cast<T>(expr)

06面向对象介绍(一)

程序

结构化程序设计

面向对象程序设计

07面向对象介绍(二)

面向对象程序设计

数据抽象

封装

继承

多态

08类与对象(一)

类声明

公有、私有、保护成员

数据抽象和封装

09类与对象(二)

内联成员函数

成员函数的重载及其缺省参数

类与结构体

隐含的this指针

10类与对象(三)

类作用域

前向声明

嵌套类

局部类

11构造函数与析构函数(一)

构造函数

默认构造函数

重载构造函数

构造函数与new

全局对象的构造先于main函数

析构造函数

析构函数与数组

析构函数与delete运算符

析构函数可以显式调用

12构造函数与析构函数(二)

转换构造函数

赋值与初始化区别

explicit

13构造函数与析构函数(三)

构造函数初始化列表

对象成员及其初始化

const成员、引用成员初始化

14构造函数与析构函数(四)

拷贝构造函数

默认拷贝构造函数

拷贝构造函数调用几种情况

15构造函数与析构函数(四)

深拷贝与浅拷贝

赋值操作

禁止拷贝

空类默认产生的成员

16对象的使用(一)

static成员

static成员函数

类/对象大小计算

17对象的使用(二)

四种对象的作用域与生存期

static用法总结

18对象的使用(三)

static与单例模式

19对象的使用(四)

const成员函数

const对象

mutable

20从一个实例看数据抽象与封装

用C的方式实现栈

用C++数据抽象的方式实现栈

21友元

友元介绍

友元函数

友元函数注意事项

友元类

友元类注意事项

22运算符重载(一)

运算符重载

成员函数重载

非成员函数重载

运算符重载规则

23运算符重载(二)

++运算符重载

!运算符重载

赋值运算符重载

24运算符重载(三)

String类实现

[]运算符重载

+运算符重载

+=运算符重载

<<运算符重载

运算符重载

25运算符重载(四)

类型转换运算符

->运算符

operator new、operator delete

26string

string介绍

string对象的定义和初始化

常用成员函数

27vector

vector介绍

vector对象初始化

vector常用成员函数

28map

map介绍

插入数据

查找与修改

删除

29继承(一)

代码重用

继承

公有、私有、保护继承

默认继承保护级别

接口继承与实现继承

继承与重定义

继承与组合

30继承(二)

不能自动继承的成员函数

继承与构造函数

友元关系与继承

静态成员与继承

31继承(三)

转换与继承

派生类到基类的转换

基类到派生类的转换

32继承(四)

多重继承

虚继承与虚基类

虚基类及其派生类构造函数

33继承(五)

虚继承对C++对象模型造成的影响

虚基类表

34虚函数与多态(一)

多态

静态绑定与动态绑定

虚函数

虚表指针

object slicing与虚函数

overload、override 、overwrite

35虚函数与多态(二)

纯虚函数

抽象类

多态

36动态创建对象

对象动态创建

37C++对象模型

C++对象模型

38RTTI

RTTI(runtime type information)

dynamic_cast运算符

typeid运算符

type_info