摘要: 1、多态是C++三大特性之一,也是面向对象设计中一个非常重要的概念。所谓多态性就是当不同的 对象接收到相同的消息时所产生的不同的响应。 C++中虚函数的存在其实就是为了解决面向对象编程设计当中的多态问题,即通过基类的指针(或者是引用) 指向实例化的派生类对象,从而通过基类的指针(或者是引用)调用派生 阅读全文
posted @ 2017-07-02 15:29 恍如隔世灬 阅读(538) 评论(0) 推荐(0) 编辑
摘要: 纯虚函数和抽象类 含有纯虚函数的类就叫做抽象类,抽象类是不能够实例化对象的(只要存在纯虚函数就不能实例化)。 在抽象类当中,仅含有纯虚函数的类就叫做接口类(没有数据成员,仅含有成员函数,而且所有 的成员函数都是纯虚函数)。 接口类更多是用来表达一种能力或者协议。 纯虚函数的定义: 由于纯虚函数并没有 阅读全文
posted @ 2017-06-19 22:46 恍如隔世灬 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 由多继承和多重继承引发的一些问题? 看一个例子: 在这个例子中,即有多继承,又有多重继承,类D继承于类B和类C,而类B和类C都继承于类A, 这就导致类D中会存在两份类A,这是不允许的,那么就得通过今天的虚继承来解决这个问题。 虚继承用法如下所示: 那么使用MigrantWorker这个类去实例化一个 阅读全文
posted @ 2017-06-18 11:34 恍如隔世灬 阅读(3452) 评论(0) 推荐(0) 编辑
摘要: 1、多重继承 在这个例子中,步兵类继承了士兵类,而士兵类继承了人类,这就形成了多重继承的关系。 2、多继承 在这个例子中,一个派生类同时继承了两个基类,这就是多继承。 参考: 《慕课网》 阅读全文
posted @ 2017-06-18 11:13 恍如隔世灬 阅读(861) 评论(1) 推荐(0) 编辑
摘要: 在C++中,成员函数的重载、覆盖与隐藏是很容易混淆的概念,一定要搞清楚他们之间的关系与差别。 1、成员函数重载的特性 (1)相同的范围(即在同一个类中)。也就是意味着基类与派生类之间的成员函数不存在重载的关系; (2)成员函数名字相同,参数不同; (3)virtual关键字可有可无。 2、覆盖 覆盖 阅读全文
posted @ 2017-06-18 11:01 恍如隔世灬 阅读(652) 评论(0) 推荐(0) 编辑
摘要: 1、公有继承 基类的public成员被继承到派生类的public访问限定符下,基类的protected成员被继承到派生类 的protected访问限定符下,而基类的private成员被继承到派生类的不可见位置,无法直接访问。 2、保护继承 基类的protected成员和public成员都被继承到派生 阅读全文
posted @ 2017-06-18 10:30 恍如隔世灬 阅读(1439) 评论(0) 推荐(0) 编辑
摘要: 如下所示: 定义一个类 我们通过如下的方法实例化对象: 编译出错,编译结果显示如下: 对于coor1来说,它调用PrintInfo函数是没有问题的;但是对于coor2调用GetX函数来说,这就 会有问题,由于coor2是常对象引用,常对象引用只有读权限,而GetX在定义的时候要求参数必须 有读写权限 阅读全文
posted @ 2017-06-17 21:36 恍如隔世灬 阅读(879) 评论(0) 推荐(0) 编辑
摘要: 深拷贝与浅拷贝 关于这两个概念先来看一个例子: 在这个例子中,数据成员是一个int类型的数据m_iCount,它的拷贝构造函数的实现很简单, 当使用右边所示的方法实例化arr2时就会调用拷贝构造函数,也就是直接进行数值的拷贝即可。 将这个例子进行一下修改: 在这个例子当中,增加了一个int *类型的 阅读全文
posted @ 2017-06-17 20:05 恍如隔世灬 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 如果一个类的数据成员中含有其他类的对象,那么就将这个数据成员称为是对象成员。 在上面定义的两个类中,线段类Line中的数据成员含有坐标类Coordinate的对象m_coorA、 m_coorB,那么m_coorA和m_coorB就被称为对象成员。 那么问题来了,当我们实例化一个Line对象的时候, 阅读全文
posted @ 2017-06-17 18:31 恍如隔世灬 阅读(748) 评论(0) 推荐(0) 编辑
摘要: 1、析构函数 构造函数会在对象实例化的时候被调用,而析构函数则在对象被销毁时调用,归还系统资源, 收拾残局,例如当我们在构造函数中申请了内存,那么我们就必须在析构函数中释放内存。 定义格式: ~类名 (void),不允许加任何参数,这点和构造函数不同; 如果没有自定义析构函数则系统自动生成; 析构函 阅读全文
posted @ 2017-06-14 17:59 恍如隔世灬 阅读(321) 评论(0) 推荐(0) 编辑