- 范围:成员函数被重载需要在相同的范围(同一个类),而虚函数要求在不同的范围(一个在派生类,一个在基类);
- 形式:重载函数要求函数有相同函数名,并且参数序列要不同,而虚函数要求函数名、返回值类型和参数序列完全相同;
- 类型:重载函数可以是成员函数或者友元函数,而虚函数只能是成员函数;
- 依据:重载函数的调用是以所传递参数序列的差别作为调用不同函数的依据,而虚函数是根据对象的不同去调用不同类的虚函数;
- 多态:虚函数在运行时表现出多态功能,这是c++的精髓;而重载函数则在编译时表现出多态性;
【C++】虚函数和重载函数的区别
于 2021-07-03 12:07:05 首次发布