函数隐藏和函数覆盖

ぃ、小莉子 提交于 2020-02-03 01:45:55

函数隐藏和函数覆盖

1、函数隐藏

    派生类中函数具有与基类同名的函数(参数列表不一定相同),从而派生类中隐藏了基类的同名函数。

2、函数覆盖

定义:

派生类中函数将基类中的函数覆盖的情况称为函数覆盖。   

条件:

1)基类是虚函数

2)发生覆盖的两个函数分别位于基类和派生类中

3)函数名和参数列表必须完全相同(虚函数)。

    函数覆盖总是与多态性相关联。

总之,函数的覆盖是发生在基类和派生类之间,两个函数必须完全相同,并且都是虚函数。除此外,则全是隐藏了。

附:

1、交换两个数:

a=a+b;

b=a-b;

a=a-a;

这种方法可能引起溢出,更为常见的是通过异或:

a = a ^ b;

b = a ^ a;

a = a ^ b;

2、编译过程

    先由预处理命令对预处理指令(#include,#define,#if)进行处理,在内存中输出翻译单元(一种临时文件),编译器接受预处理器的输出,将源代码转换成忺机器语言指令的三个目标文件(头文件不参与编译),连接时,链接器将目标文件和类库文件连接生成exe文件。

        为了防止程序中出现重定义(如类),我们一般在定义头文件时,都要用预处理指令来操作。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!