C++的语法中通过在派生类中使用using声明可以忽略继承方式 , 而让派生类对于基类的私有和保护成员具有特殊的访问权限 , 甚至可以改变派生类对象对于基类成员的访问权限 . 个人认为这种语法很容易让别人对于自己的代码产生误解 , 应该尽量少用或不用 . 为防止自己忘记 , 下面记录一下个人的理解 ...
分类:
其他好文 时间:
2019-07-16 12:54:52
阅读次数:
112
多态 C++的封装、继承和多态三大特性,封装没什么好说的,就是把事务属性和操作抽象成为类,在用类去实例化对象,从而对象可以使用操作/管理使用它的属性。 至于继承,和多态密不可分。基类可以进行派生,而派生类则是继承基类或称父类,把基类中属性和方法拿过来,变成自己的一部分,其中需要较为精细的思考。 多态 ...
分类:
编程语言 时间:
2019-07-15 13:33:41
阅读次数:
137
一、继承 使用要点: 1.父类也称作超类、基类、派生类等。 2.Java中只有单继承,没有像C++那样的多继承。多继承会引起混乱,使得继承链过于复杂,系统难于维护。(类只有单继承,接口有多继承) 3.Java中类没有多继承,接口有多继承。 4.子类继承父类,可以得到父类的全部属性和方法(除了父类的构 ...
分类:
其他好文 时间:
2019-07-13 20:03:11
阅读次数:
116
面向对象编程OOP 01内容回顾 02属性@property本质是函数 未用属性前内容 使用属性后内容 @property 属性本质是函数,但是用起来像字段 03继承、多态示例 继承通过下面的一个基类 和一个派生类讲解 里面用到了继承和多态 【基类】 【派生类】 【函数调用】 04类嵌套如Emplo ...
分类:
编程语言 时间:
2019-07-05 20:45:41
阅读次数:
125
https://www.cnblogs.com/xinxue/p/5471708.html 2 重写 (override) 在 1.2.2 中提到 override 关键字,可以避免派生类中忘记重写虚函数的错误 下面以重写虚函数时,容易犯的四个错误为例,详细阐述之 在派生类中,重写 (overrid ...
分类:
其他好文 时间:
2019-06-26 13:51:52
阅读次数:
181
概念 将所有对象组合成一种树形结构,有分支节点、叶子节点,分支节点可以有自己的子节点,子节点可以是分支节点、叶子节点,可以进行增删的操作,而叶子节点不可以。比如文件夹就是一个分支节点,而文件就是一个叶子节点。用于遍历组织结构或者处理树形对象。父类引用指向派生类对象(Compoent->Documen ...
分类:
编程语言 时间:
2019-06-25 09:16:39
阅读次数:
108
“多态”的关键在于通过基类指针或引用调用一个虚函数时,编译时不确定到底调用的是基类还是派生类的函数,运行时才确定 这叫“动态联编”。“动态联编” 底是怎么实现的呢? 多态实现的关键 虚函数表每一个有虚函数的类(或有虚函数的类的派生类)都有一个虚函数表,该类的任何对象中都放着虚函数表的指针。虚函数表中 ...
分类:
编程语言 时间:
2019-06-24 23:58:21
阅读次数:
236
问题: 虚函数都是同名 同参数表的吗? 虚函数和普通成员函数的区别 虚函数可以多态,其他不行 在构造函数和析构函数中调用 虚函数 不是多态 派生类还没有初始化好 MyCompare() qsort 怎么表示排序关系 虚函数表地址!! 虚函数?在类的定义中,前面有 virtual 关键字的成员函数就是 ...
分类:
编程语言 时间:
2019-06-23 22:49:12
阅读次数:
161
1 函数参数 (1)收集参数:以一个星号*加上形参名的方式,表示这个函数的实参个数不定,可能0个可能n个。 (2)收集参数:用两个星号(**)来标定可变参数,将变参数打包为字典。它表明可变参数是字典元素。调用函数的方法则需要采用诸如 arg I =value l的形式。 2 传值还是传引用——传引用 ...
分类:
编程语言 时间:
2019-06-22 11:00:50
阅读次数:
122
Spider基本上能做很多事情了,但是如果你想爬取全站的话,可能需要一个更强大的武器。CrawlSpider基于Spider,但是可以说是为全站爬取而生。CrawlSpiders是Spider的派生类,Spider类的设计原则是只爬取start_url列表中的网页,而CrawlSpider类定义了一 ...
分类:
其他好文 时间:
2019-06-21 12:47:02
阅读次数:
81