- 博客(5)
- 收藏
- 关注
原创 C++关键字 explicit详解
**类构造函数的隐式自动转换**.:当类构造函数只有一个参数或者除了第一个参数外,其他参数均存在默认参数时。CxString string2 = 10;存在类构造函数隐式自动转换,等同于如下操作**explicit: 用来防止类构造函数的隐式转换。C++默认情况下支持类构造函数的隐式转换**当使用了explicit修饰类构造函数时,就不能使用隐式转换的写法。implici...
2019-12-17 17:52:22 194
原创 多态
多态同样的消息被不同类型的对象接受,导致不同的行为。多态分类1. 重载多态: 普通函数重载, 类成员函数重载, 运算符重载(本文重点讲述)2. 强制多态: 将一个变元的类型强制加以变化,以符合一个函数或者操作的要求。例如: 整数+浮点数 整数被强制转化为浮点数。3. 包含多态: 不同类中同名成员函数的多态行为。 主要通过**虚函数实现。(本文重点讲述)4. 参数多态: 与类模板...
2019-08-20 00:00:53 137
原创 重载,同名隐藏与覆盖
重载:重载的条件是在同一个作用域内,两个同名的不同参数列表的函数(返回值类型不做考虑)之间形成重载关系。同名隐藏:派生类声明了一个与基类同名的函数(成员变量也可以),函数名相同,参数列表无所谓。访问方式:对象名.fun() 访问到的函数是在派生类中新增的成员函数。被隐藏之后的从基类继承的同名函数,依然存在。访问方式: 对象名.直接基类::fun();覆盖:派生类声明了一个与基类同名的...
2019-08-12 20:07:49 406
原创 构造函数,复制构造函数,析构函数
构造函数:创建对象时利用特定的值构造对象,将对象初始化为一个特定的状态。构造函数的函数名与类名相同,且没有返回值。通常被声明为公有函数。默认构造函数:如果没有声明构造函数时,编译器自动生成一个无参的构造函数。函数体为空的构造函数并非什么都不做,因为它还要负责基类的构造和成员对象的构造。构造函数的执行顺序:如果该类存在虚基类,则先调用虚基类的构造函数完成对虚基类成员的初始化。(虚基类)...
2019-08-12 20:00:27 279
原创 类派生过程及类型兼容
什么是派生/继承?派生就是以原有的类为基础产生新的类。派生的好处:提高代码的重用性,扩展性。派生类的定义:class 子类名 :继承方式(public , protect , private)基类名,继承方式 基类名{派生类成员声明}如果不显式的给出继承方式,默认为私有继承。private继承/派生过程:1. 吸收已有基类成员: 除了构造函数及析构函数,所有的基类成员全部被...
2019-08-09 17:58:18 284
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人